[INFO] cloning repository https://github.com/ManStudio/MuzzMan-Lib
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ManStudio/MuzzMan-Lib" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FManStudio%2FMuzzMan-Lib", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FManStudio%2FMuzzMan-Lib'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 12d2fb8bfa5768a7cd8e77c8012249f510e3ddca
[INFO] checking ManStudio/MuzzMan-Lib against master#e6e4f7ed1589e03bc2f6c5931c1a72e7947e8682 for beta-170-4
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FManStudio%2FMuzzMan-Lib" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/ManStudio/MuzzMan-Lib on toolchain e6e4f7ed1589e03bc2f6c5931c1a72e7947e8682
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+e6e4f7ed1589e03bc2f6c5931c1a72e7947e8682" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] removed /workspace/builds/worker-7-tc2/source/rust-toolchain.toml
[INFO] started tweaking git repo https://github.com/ManStudio/MuzzMan-Lib
[INFO] finished tweaking git repo https://github.com/ManStudio/MuzzMan-Lib
[INFO] tweaked toml for git repo https://github.com/ManStudio/MuzzMan-Lib written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/ManStudio/MuzzMan-Lib already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+e6e4f7ed1589e03bc2f6c5931c1a72e7947e8682" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:19e73879b68f455e41552ea35293514db52ea292d993f571636dbffedb77a1ee" "/opt/rustwide/cargo-home/bin/cargo" "+e6e4f7ed1589e03bc2f6c5931c1a72e7947e8682" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] b2b010dd2dfc52690f99d0632d4c869df0f218be98930fcff15276f94c25b4f0
[INFO] running `Command { std: "docker" "start" "-a" "b2b010dd2dfc52690f99d0632d4c869df0f218be98930fcff15276f94c25b4f0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "b2b010dd2dfc52690f99d0632d4c869df0f218be98930fcff15276f94c25b4f0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b2b010dd2dfc52690f99d0632d4c869df0f218be98930fcff15276f94c25b4f0", kill_on_drop: false }`
[INFO] [stdout] b2b010dd2dfc52690f99d0632d4c869df0f218be98930fcff15276f94c25b4f0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:19e73879b68f455e41552ea35293514db52ea292d993f571636dbffedb77a1ee" "/opt/rustwide/cargo-home/bin/cargo" "+e6e4f7ed1589e03bc2f6c5931c1a72e7947e8682" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 85ee4443b4a1f1e5d9ffcd1f4a257a89e04d0fc09177325f3badc5518b2c514c
[INFO] running `Command { std: "docker" "start" "-a" "85ee4443b4a1f1e5d9ffcd1f4a257a89e04d0fc09177325f3badc5518b2c514c", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.51
[INFO] [stderr]    Compiling quote v1.0.23
[INFO] [stderr]    Compiling syn v1.0.107
[INFO] [stderr]    Compiling unicode-ident v1.0.6
[INFO] [stderr]    Compiling libc v0.2.139
[INFO] [stderr]     Checking cfg-if v1.0.0
[INFO] [stderr]    Compiling serde_derive v1.0.152
[INFO] [stderr]    Compiling serde v1.0.152
[INFO] [stderr]     Checking ppv-lite86 v0.2.17
[INFO] [stderr]    Compiling log v0.4.17
[INFO] [stderr]     Checking once_cell v1.17.1
[INFO] [stderr]     Checking get_ref v0.1.0
[INFO] [stderr]     Checking libloading v0.7.4
[INFO] [stderr]     Checking getrandom v0.2.8
[INFO] [stderr]     Checking dirs-sys v0.3.7
[INFO] [stderr]     Checking dirs v4.0.0
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking muzzman-lib-macros v0.1.3 (/opt/rustwide/workdir/macros)
[INFO] [stderr]    Compiling bytes-kman-derive v0.1.5
[INFO] [stderr]     Checking bytes-kman v0.1.19
[INFO] [stderr]     Checking muzzman-lib v0.3.5 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0407]: method `element_notify` is not a member of trait `TSession`
[INFO] [stdout]     --> src/local_session/session.rs:1307:5
[INFO] [stdout]      |
[INFO] [stdout] 1307 | /     fn element_notify(&self, element_id: &ElementPath, event: Event) -> Result<(), SessionError> {
[INFO] [stdout] 1308 | |         let element = self.get_element(element_id)?;
[INFO] [stdout] 1309 | |         let module;
[INFO] [stdout] 1310 | |         {
[INFO] [stdout] ...    |
[INFO] [stdout] 1327 | |         Ok(())
[INFO] [stdout] 1328 | |     }
[INFO] [stdout]      | |_____^ not a member of trait `TSession`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0407]: method `element_emit` is not a member of trait `TSession`
[INFO] [stdout]     --> src/local_session/session.rs:1330:5
[INFO] [stdout]      |
[INFO] [stdout] 1330 |       fn element_emit(&self, element_id: &ElementPath, event: Event) -> Result<(), SessionError> {
[INFO] [stdout]      |       ^  ------------ help: there is an associated function with a similar name: `element_wait`
[INFO] [stdout]      |  _____|
[INFO] [stdout]      | |
[INFO] [stdout] 1331 | |         let element = self.get_element(element_id)?;
[INFO] [stdout] 1332 | |         let events;
[INFO] [stdout] 1333 | |         {
[INFO] [stdout] ...    |
[INFO] [stdout] 1346 | |         Ok(())
[INFO] [stdout] 1347 | |     }
[INFO] [stdout]      | |_____^ not a member of trait `TSession`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0407]: method `element_subscribe` is not a member of trait `TSession`
[INFO] [stdout]     --> src/local_session/session.rs:1349:5
[INFO] [stdout]      |
[INFO] [stdout] 1349 | /     fn element_subscribe(&self, element_id: &ElementPath, _ref: ID) -> Result<(), SessionError> {
[INFO] [stdout] 1350 | |         // validate if element is valid
[INFO] [stdout] 1351 | |         {
[INFO] [stdout] 1352 | |             let _ = self.get_element(element_id)?;
[INFO] [stdout] ...    |
[INFO] [stdout] 1364 | |         Ok(())
[INFO] [stdout] 1365 | |     }
[INFO] [stdout]      | |_____^ not a member of trait `TSession`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0407]: method `element_unsubscribe` is not a member of trait `TSession`
[INFO] [stdout]     --> src/local_session/session.rs:1367:5
[INFO] [stdout]      |
[INFO] [stdout] 1367 | /     fn element_unsubscribe(&self, element_id: &ElementPath, _ref: ID) -> Result<(), SessionError> {
[INFO] [stdout] 1368 | |         // validate if element is valid
[INFO] [stdout] 1369 | |         {
[INFO] [stdout] 1370 | |             let _ = self.get_element(element_id)?;
[INFO] [stdout] ...    |
[INFO] [stdout] 1382 | |         Ok(())
[INFO] [stdout] 1383 | |     }
[INFO] [stdout]      | |_____^ not a member of trait `TSession`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0407]: method `element_notify` is not a member of trait `TSession`
[INFO] [stdout]     --> src/local_session/session.rs:1307:5
[INFO] [stdout]      |
[INFO] [stdout] 1307 | /     fn element_notify(&self, element_id: &ElementPath, event: Event) -> Result<(), SessionError> {
[INFO] [stdout] 1308 | |         let element = self.get_element(element_id)?;
[INFO] [stdout] 1309 | |         let module;
[INFO] [stdout] 1310 | |         {
[INFO] [stdout] ...    |
[INFO] [stdout] 1327 | |         Ok(())
[INFO] [stdout] 1328 | |     }
[INFO] [stdout]      | |_____^ not a member of trait `TSession`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0407]: method `element_emit` is not a member of trait `TSession`
[INFO] [stdout]     --> src/local_session/session.rs:1330:5
[INFO] [stdout]      |
[INFO] [stdout] 1330 |       fn element_emit(&self, element_id: &ElementPath, event: Event) -> Result<(), SessionError> {
[INFO] [stdout]      |       ^  ------------ help: there is an associated function with a similar name: `element_wait`
[INFO] [stdout]      |  _____|
[INFO] [stdout]      | |
[INFO] [stdout] 1331 | |         let element = self.get_element(element_id)?;
[INFO] [stdout] 1332 | |         let events;
[INFO] [stdout] 1333 | |         {
[INFO] [stdout] ...    |
[INFO] [stdout] 1346 | |         Ok(())
[INFO] [stdout] 1347 | |     }
[INFO] [stdout]      | |_____^ not a member of trait `TSession`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0407]: method `element_subscribe` is not a member of trait `TSession`
[INFO] [stdout]     --> src/local_session/session.rs:1349:5
[INFO] [stdout]      |
[INFO] [stdout] 1349 | /     fn element_subscribe(&self, element_id: &ElementPath, _ref: ID) -> Result<(), SessionError> {
[INFO] [stdout] 1350 | |         // validate if element is valid
[INFO] [stdout] 1351 | |         {
[INFO] [stdout] 1352 | |             let _ = self.get_element(element_id)?;
[INFO] [stdout] ...    |
[INFO] [stdout] 1364 | |         Ok(())
[INFO] [stdout] 1365 | |     }
[INFO] [stdout]      | |_____^ not a member of trait `TSession`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0407]: method `element_unsubscribe` is not a member of trait `TSession`
[INFO] [stdout]     --> src/local_session/session.rs:1367:5
[INFO] [stdout]      |
[INFO] [stdout] 1367 | /     fn element_unsubscribe(&self, element_id: &ElementPath, _ref: ID) -> Result<(), SessionError> {
[INFO] [stdout] 1368 | |         // validate if element is valid
[INFO] [stdout] 1369 | |         {
[INFO] [stdout] 1370 | |             let _ = self.get_element(element_id)?;
[INFO] [stdout] ...    |
[INFO] [stdout] 1382 | |         Ok(())
[INFO] [stdout] 1383 | |     }
[INFO] [stdout]      | |_____^ not a member of trait `TSession`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0407]: method `location_notify` is not a member of trait `TSession`
[INFO] [stdout]     --> src/local_session/session.rs:2032:5
[INFO] [stdout]      |
[INFO] [stdout] 2032 | /     fn location_notify(
[INFO] [stdout] 2033 | |         &self,
[INFO] [stdout] 2034 | |         location_id: &LocationPath,
[INFO] [stdout] 2035 | |         event: Event,
[INFO] [stdout] ...    |
[INFO] [stdout] 2056 | |         Ok(())
[INFO] [stdout] 2057 | |     }
[INFO] [stdout]      | |_____^ not a member of trait `TSession`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0407]: method `location_emit` is not a member of trait `TSession`
[INFO] [stdout]     --> src/local_session/session.rs:2059:5
[INFO] [stdout]      |
[INFO] [stdout] 2059 | /     fn location_emit(&self, location_id: &LocationPath, event: Event) -> Result<(), SessionError> {
[INFO] [stdout] 2060 | |         let location = self.get_location(location_id)?;
[INFO] [stdout] 2061 | |         let events;
[INFO] [stdout] 2062 | |         {
[INFO] [stdout] ...    |
[INFO] [stdout] 2075 | |         Ok(())
[INFO] [stdout] 2076 | |     }
[INFO] [stdout]      | |_____^ not a member of trait `TSession`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0407]: method `location_subscribe` is not a member of trait `TSession`
[INFO] [stdout]     --> src/local_session/session.rs:2078:5
[INFO] [stdout]      |
[INFO] [stdout] 2078 | /     fn location_subscribe(&self, location_id: &LocationPath, _ref: ID) -> Result<(), SessionError> {
[INFO] [stdout] 2079 | |         // validate if element is valid
[INFO] [stdout] 2080 | |         {
[INFO] [stdout] 2081 | |             let _ = self.get_location(location_id)?;
[INFO] [stdout] ...    |
[INFO] [stdout] 2093 | |         Ok(())
[INFO] [stdout] 2094 | |     }
[INFO] [stdout]      | |_____^ not a member of trait `TSession`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0407]: method `location_unsubscribe` is not a member of trait `TSession`
[INFO] [stdout]     --> src/local_session/session.rs:2096:5
[INFO] [stdout]      |
[INFO] [stdout] 2096 | /     fn location_unsubscribe(&self, uid: UID, _ref: ID) -> Result<(), SessionError> {
[INFO] [stdout] 2097 | |         // validate if element is valid
[INFO] [stdout] 2098 | |         {
[INFO] [stdout] 2099 | |             let _ = self.get_location(location_id)?;
[INFO] [stdout] ...    |
[INFO] [stdout] 2114 | |         Ok(())
[INFO] [stdout] 2115 | |     }
[INFO] [stdout]      | |_____^ not a member of trait `TSession`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0407]: method `location_notify` is not a member of trait `TSession`
[INFO] [stdout]     --> src/local_session/session.rs:2032:5
[INFO] [stdout]      |
[INFO] [stdout] 2032 | /     fn location_notify(
[INFO] [stdout] 2033 | |         &self,
[INFO] [stdout] 2034 | |         location_id: &LocationPath,
[INFO] [stdout] 2035 | |         event: Event,
[INFO] [stdout] ...    |
[INFO] [stdout] 2056 | |         Ok(())
[INFO] [stdout] 2057 | |     }
[INFO] [stdout]      | |_____^ not a member of trait `TSession`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0407]: method `location_emit` is not a member of trait `TSession`
[INFO] [stdout]     --> src/local_session/session.rs:2059:5
[INFO] [stdout]      |
[INFO] [stdout] 2059 | /     fn location_emit(&self, location_id: &LocationPath, event: Event) -> Result<(), SessionError> {
[INFO] [stdout] 2060 | |         let location = self.get_location(location_id)?;
[INFO] [stdout] 2061 | |         let events;
[INFO] [stdout] 2062 | |         {
[INFO] [stdout] ...    |
[INFO] [stdout] 2075 | |         Ok(())
[INFO] [stdout] 2076 | |     }
[INFO] [stdout]      | |_____^ not a member of trait `TSession`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0407]: method `location_subscribe` is not a member of trait `TSession`
[INFO] [stdout]     --> src/local_session/session.rs:2078:5
[INFO] [stdout]      |
[INFO] [stdout] 2078 | /     fn location_subscribe(&self, location_id: &LocationPath, _ref: ID) -> Result<(), SessionError> {
[INFO] [stdout] 2079 | |         // validate if element is valid
[INFO] [stdout] 2080 | |         {
[INFO] [stdout] 2081 | |             let _ = self.get_location(location_id)?;
[INFO] [stdout] ...    |
[INFO] [stdout] 2093 | |         Ok(())
[INFO] [stdout] 2094 | |     }
[INFO] [stdout]      | |_____^ not a member of trait `TSession`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0407]: method `location_unsubscribe` is not a member of trait `TSession`
[INFO] [stdout]     --> src/local_session/session.rs:2096:5
[INFO] [stdout]      |
[INFO] [stdout] 2096 | /     fn location_unsubscribe(&self, uid: UID, _ref: ID) -> Result<(), SessionError> {
[INFO] [stdout] 2097 | |         // validate if element is valid
[INFO] [stdout] 2098 | |         {
[INFO] [stdout] 2099 | |             let _ = self.get_location(location_id)?;
[INFO] [stdout] ...    |
[INFO] [stdout] 2114 | |         Ok(())
[INFO] [stdout] 2115 | |     }
[INFO] [stdout]      | |_____^ not a member of trait `TSession`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `location_id` in this scope
[INFO] [stdout]     --> src/local_session/session.rs:2099:39
[INFO] [stdout]      |
[INFO] [stdout] 2099 |             let _ = self.get_location(location_id)?;
[INFO] [stdout]      |                                       ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `location_id` in this scope
[INFO] [stdout]     --> src/local_session/session.rs:2099:39
[INFO] [stdout]      |
[INFO] [stdout] 2099 |             let _ = self.get_location(location_id)?;
[INFO] [stdout]      |                                       ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `location_id` in this scope
[INFO] [stdout]     --> src/local_session/session.rs:2109:39
[INFO] [stdout]      |
[INFO] [stdout] 2109 |             .unsubscribe(ID::Location(location_id.clone()))
[INFO] [stdout]      |                                       ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `location_id` in this scope
[INFO] [stdout]     --> src/local_session/session.rs:2109:39
[INFO] [stdout]      |
[INFO] [stdout] 2109 |             .unsubscribe(ID::Location(location_id.clone()))
[INFO] [stdout]      |                                       ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Ref`
[INFO] [stdout]   --> src/common/mod.rs:36:15
[INFO] [stdout]    |
[INFO] [stdout] 36 |     prelude::{Ref, SessionError, TModuleHelper},
[INFO] [stdout]    |               ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Ref`
[INFO] [stdout]   --> src/common/mod.rs:36:15
[INFO] [stdout]    |
[INFO] [stdout] 36 |     prelude::{Ref, SessionError, TModuleHelper},
[INFO] [stdout]    |               ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rc::Rc`
[INFO] [stdout]  --> src/local_session/session.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 |     rc::Rc,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rc::Rc`
[INFO] [stdout]  --> src/local_session/session.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 |     rc::Rc,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TSession`
[INFO] [stdout]    --> src/types.rs:141:71
[INFO] [stdout]     |
[INFO] [stdout] 141 |         RefElementPath, RefLocationPath, RefModulePath, SessionError, TSession,
[INFO] [stdout]     |                                                                       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TSession`
[INFO] [stdout]    --> src/types.rs:141:71
[INFO] [stdout]     |
[INFO] [stdout] 141 |         RefElementPath, RefLocationPath, RefModulePath, SessionError, TSession,
[INFO] [stdout]     |                                                                       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `add_module` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:126:10
[INFO] [stdout]     |
[INFO] [stdout] 126 |     ) -> Result<ModuleId, SessionError> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          expected `Arc<RwLock<module::RefModulePath>>`, found `module::ModuleId`
[INFO] [stdout]     |          help: change the output type to match the trait: `Result<Arc<RwLock<module::RefModulePath>>, session::SessionError>`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/local_session/session.rs:72:10
[INFO] [stdout]     |
[INFO] [stdout] 72  |     ) -> Result<MRef, SessionError>;
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, Box<_>, std::option::Option<_>, std::option::Option<_>) -> Result<Arc<RwLock<module::RefModulePath>>, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, Box<_>, std::option::Option<_>, std::option::Option<_>) -> Result<module::ModuleId, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0046]: not all trait items implemented, missing: `register_module`, `register_element`, `register_location`
[INFO] [stdout]   --> src/local_session/session.rs:81:1
[INFO] [stdout]    |
[INFO] [stdout] 74 |     fn register_module(&self, _ref: Ref) -> Result<ModuleId, SessionError>;
[INFO] [stdout]    |     ----------------------------------------------------------------------- `register_module` from trait
[INFO] [stdout] 75 |     fn register_element(&self, _ref: Ref) -> Result<ElementId, SessionError>;
[INFO] [stdout]    |     ------------------------------------------------------------------------- `register_element` from trait
[INFO] [stdout] 76 |     fn register_location(&self, _ref: Ref) -> Result<LocationId, SessionError>;
[INFO] [stdout]    |     --------------------------------------------------------------------------- `register_location` from trait
[INFO] [stdout] ...
[INFO] [stdout] 81 | impl TLocalSession for Arc<RwLock<LocalSession>> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing `register_module`, `register_element`, `register_location` in implementation
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `load_module` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:339:45
[INFO] [stdout]     |
[INFO] [stdout] 339 |     fn load_module(&self, path: PathBuf) -> Result<MRef, SessionError> {
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             expected `module::ModuleId`, found `Arc<RwLock<module::RefModulePath>>`
[INFO] [stdout]     |                                             help: change the output type to match the trait: `Result<module::ModuleId, session::SessionError>`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:76:45
[INFO] [stdout]     |
[INFO] [stdout] 76  |     fn load_module(&self, path: PathBuf) -> Result<ModuleId, SessionError>;
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, PathBuf) -> Result<module::ModuleId, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, PathBuf) -> Result<Arc<RwLock<module::RefModulePath>>, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `remove_module` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:348:40
[INFO] [stdout]     |
[INFO] [stdout] 348 |     fn remove_module(&self, module_id: ModulePath) -> Result<MRow, SessionError> {
[INFO] [stdout]     |                                        ^^^^^^^^^^
[INFO] [stdout]     |                                        |
[INFO] [stdout]     |                                        expected `u64`, found `module::ModulePath`
[INFO] [stdout]     |                                        help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:77:33
[INFO] [stdout]     |
[INFO] [stdout] 77  |     fn remove_module(&self, id: UID) -> Result<MRow, SessionError>;
[INFO] [stdout]     |                                 ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, module::ModulePath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `load_module_info` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:382:53
[INFO] [stdout]     |
[INFO] [stdout] 382 |     fn load_module_info(&self, info: ModuleInfo) -> Result<MRef, SessionError> {
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                     |
[INFO] [stdout]     |                                                     expected `module::ModuleId`, found `Arc<RwLock<module::RefModulePath>>`
[INFO] [stdout]     |                                                     help: change the output type to match the trait: `Result<module::ModuleId, session::SessionError>`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:78:53
[INFO] [stdout]     |
[INFO] [stdout] 78  |     fn load_module_info(&self, info: ModuleInfo) -> Result<ModuleId, SessionError>;
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, module::ModuleInfo) -> Result<module::ModuleId, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, module::ModuleInfo) -> Result<Arc<RwLock<module::RefModulePath>>, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `find_module` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:416:48
[INFO] [stdout]     |
[INFO] [stdout] 416 |     fn find_module(&self, info: ModuleInfo) -> Result<MRef, SessionError> {
[INFO] [stdout]     |                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                |
[INFO] [stdout]     |                                                expected `module::ModuleId`, found `Arc<RwLock<module::RefModulePath>>`
[INFO] [stdout]     |                                                help: change the output type to match the trait: `Result<module::ModuleId, session::SessionError>`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:79:48
[INFO] [stdout]     |
[INFO] [stdout] 79  |     fn find_module(&self, info: ModuleInfo) -> Result<ModuleId, SessionError>;
[INFO] [stdout]     |                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, module::ModuleInfo) -> Result<module::ModuleId, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, module::ModuleInfo) -> Result<Arc<RwLock<module::RefModulePath>>, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `register_action` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:442:20
[INFO] [stdout]     |
[INFO] [stdout] 442 |         module_id: &ModulePath,
[INFO] [stdout]     |                    ^^^^^^^^^^^
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                    help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:83:20
[INFO] [stdout]     |
[INFO] [stdout] 83  |         module_id: UID,
[INFO] [stdout]     |                    ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, std::string::String, std::vec::Vec<_>, fn(Arc<_>, std::vec::Vec<_>)) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath, std::string::String, std::vec::Vec<_>, fn(Arc<_>, std::vec::Vec<_>)) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `remove_action` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:459:36
[INFO] [stdout]     |
[INFO] [stdout] 459 |     fn remove_action(&self, owner: &ModulePath, name: String) -> Result<(), SessionError> {
[INFO] [stdout]     |                                    ^^^^^^^^^^^
[INFO] [stdout]     |                                    |
[INFO] [stdout]     |                                    expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                                    help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:88:40
[INFO] [stdout]     |
[INFO] [stdout] 88  |     fn remove_action(&self, module_id: UID, name: String) -> Result<(), SessionError>;
[INFO] [stdout]     |                                        ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, std::string::String) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath, std::string::String) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `run_action` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:497:16
[INFO] [stdout]     |
[INFO] [stdout] 497 |         owner: &ModulePath,
[INFO] [stdout]     |                ^^^^^^^^^^^
[INFO] [stdout]     |                |
[INFO] [stdout]     |                expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:91:37
[INFO] [stdout]     |
[INFO] [stdout] 91  |     fn run_action(&self, module_id: UID, name: String, data: Vec<Type>)
[INFO] [stdout]     |                                     ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, std::string::String, std::vec::Vec<_>) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath, std::string::String, std::vec::Vec<_>) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `get_modules` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:523:51
[INFO] [stdout]     |
[INFO] [stdout] 523 |     fn get_modules(&self, range: Range<usize>) -> Result<Vec<MRef>, SessionError> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   expected `module::ModuleId`, found `Arc<RwLock<module::RefModulePath>>`
[INFO] [stdout]     |                                                   help: change the output type to match the trait: `Result<std::vec::Vec<module::ModuleId>, session::SessionError>`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:95:51
[INFO] [stdout]     |
[INFO] [stdout] 95  |     fn get_modules(&self, range: Range<usize>) -> Result<Vec<ModuleId>, SessionError>;
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, std::ops::Range<_>) -> Result<std::vec::Vec<module::ModuleId>, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, std::ops::Range<_>) -> Result<std::vec::Vec<Arc<RwLock<module::RefModulePath>>>, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_get_name` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:534:42
[INFO] [stdout]     |
[INFO] [stdout] 534 |     fn module_get_name(&self, module_id: &ModulePath) -> Result<String, SessionError> {
[INFO] [stdout]     |                                          ^^^^^^^^^^^
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                                          help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:97:42
[INFO] [stdout]     |
[INFO] [stdout] 97  |     fn module_get_name(&self, module_id: UID) -> Result<String, SessionError>;
[INFO] [stdout]     |                                          ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_set_name` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:538:42
[INFO] [stdout]     |
[INFO] [stdout] 538 |     fn module_set_name(&self, module_id: &ModulePath, name: String) -> Result<(), SessionError> {
[INFO] [stdout]     |                                          ^^^^^^^^^^^
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                                          help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:98:42
[INFO] [stdout]     |
[INFO] [stdout] 98  |     fn module_set_name(&self, module_id: UID, name: String) -> Result<(), SessionError>;
[INFO] [stdout]     |                                          ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, std::string::String) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath, std::string::String) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_get_default_name` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:543:50
[INFO] [stdout]     |
[INFO] [stdout] 543 |     fn module_get_default_name(&self, module_id: &ModulePath) -> Result<String, SessionError> {
[INFO] [stdout]     |                                                  ^^^^^^^^^^^
[INFO] [stdout]     |                                                  |
[INFO] [stdout]     |                                                  expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                                                  help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:99:50
[INFO] [stdout]     |
[INFO] [stdout] 99  |     fn module_get_default_name(&self, module_id: UID) -> Result<String, SessionError>;
[INFO] [stdout]     |                                                  ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_get_uid` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:549:41
[INFO] [stdout]     |
[INFO] [stdout] 549 |     fn module_get_uid(&self, module_id: &ModulePath) -> Result<UID, SessionError> {
[INFO] [stdout]     |                                         ^^^^^^^^^^^
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                                         help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:101:41
[INFO] [stdout]     |
[INFO] [stdout] 101 |     fn module_get_uid(&self, module_id: UID) -> Result<UID, SessionError>;
[INFO] [stdout]     |                                         ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_get_version` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:555:45
[INFO] [stdout]     |
[INFO] [stdout] 555 |     fn module_get_version(&self, module_id: &ModulePath) -> Result<String, SessionError> {
[INFO] [stdout]     |                                             ^^^^^^^^^^^
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                                             help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:102:45
[INFO] [stdout]     |
[INFO] [stdout] 102 |     fn module_get_version(&self, module_id: UID) -> Result<String, SessionError>;
[INFO] [stdout]     |                                             ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_supported_versions` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:563:20
[INFO] [stdout]     |
[INFO] [stdout] 563 |         module_id: &ModulePath,
[INFO] [stdout]     |                    ^^^^^^^^^^^
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                    help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:103:52
[INFO] [stdout]     |
[INFO] [stdout] 103 |     fn module_supported_versions(&self, module_id: UID) -> Result<Range<u64>, SessionError>;
[INFO] [stdout]     |                                                    ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_get_desc` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:570:42
[INFO] [stdout]     |
[INFO] [stdout] 570 |     fn module_get_desc(&self, module_id: &ModulePath) -> Result<String, SessionError> {
[INFO] [stdout]     |                                          ^^^^^^^^^^^
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                                          help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:105:42
[INFO] [stdout]     |
[INFO] [stdout] 105 |     fn module_get_desc(&self, module_id: UID) -> Result<String, SessionError>;
[INFO] [stdout]     |                                          ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_set_desc` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:574:42
[INFO] [stdout]     |
[INFO] [stdout] 574 |     fn module_set_desc(&self, module_id: &ModulePath, desc: String) -> Result<(), SessionError> {
[INFO] [stdout]     |                                          ^^^^^^^^^^^
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                                          help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:106:42
[INFO] [stdout]     |
[INFO] [stdout] 106 |     fn module_set_desc(&self, module_id: UID, desc: String) -> Result<(), SessionError>;
[INFO] [stdout]     |                                          ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, std::string::String) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath, std::string::String) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_get_default_desc` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:579:50
[INFO] [stdout]     |
[INFO] [stdout] 579 |     fn module_get_default_desc(&self, module_id: &ModulePath) -> Result<String, SessionError> {
[INFO] [stdout]     |                                                  ^^^^^^^^^^^
[INFO] [stdout]     |                                                  |
[INFO] [stdout]     |                                                  expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                                                  help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:107:50
[INFO] [stdout]     |
[INFO] [stdout] 107 |     fn module_get_default_desc(&self, module_id: UID) -> Result<String, SessionError>;
[INFO] [stdout]     |                                                  ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_get_proxy` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:585:43
[INFO] [stdout]     |
[INFO] [stdout] 585 |     fn module_get_proxy(&self, module_id: &ModulePath) -> Result<usize, SessionError> {
[INFO] [stdout]     |                                           ^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                                           help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:109:43
[INFO] [stdout]     |
[INFO] [stdout] 109 |     fn module_get_proxy(&self, module_id: UID) -> Result<usize, SessionError>;
[INFO] [stdout]     |                                           ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_set_proxy` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:589:43
[INFO] [stdout]     |
[INFO] [stdout] 589 |     fn module_set_proxy(&self, module_id: &ModulePath, proxy: usize) -> Result<(), SessionError> {
[INFO] [stdout]     |                                           ^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                                           help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:110:43
[INFO] [stdout]     |
[INFO] [stdout] 110 |     fn module_set_proxy(&self, module_id: UID, proxy: usize) -> Result<(), SessionError>;
[INFO] [stdout]     |                                           ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, _) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath, _) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_get_settings` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:594:46
[INFO] [stdout]     |
[INFO] [stdout] 594 |     fn module_get_settings(&self, module_id: &ModulePath) -> Result<Values, SessionError> {
[INFO] [stdout]     |                                              ^^^^^^^^^^^
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                                              help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:112:46
[INFO] [stdout]     |
[INFO] [stdout] 112 |     fn module_get_settings(&self, module_id: UID) -> Result<Values, SessionError>;
[INFO] [stdout]     |                                              ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_set_settings` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:600:20
[INFO] [stdout]     |
[INFO] [stdout] 600 |         module_id: &ModulePath,
[INFO] [stdout]     |                    ^^^^^^^^^^^
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                    help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:113:46
[INFO] [stdout]     |
[INFO] [stdout] 113 |     fn module_set_settings(&self, module_id: UID, data: Values) -> Result<(), SessionError>;
[INFO] [stdout]     |                                              ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, data::Values) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath, data::Values) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_get_element_settings` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:607:54
[INFO] [stdout]     |
[INFO] [stdout] 607 |     fn module_get_element_settings(&self, module_id: &ModulePath) -> Result<Values, SessionError> {
[INFO] [stdout]     |                                                      ^^^^^^^^^^^
[INFO] [stdout]     |                                                      |
[INFO] [stdout]     |                                                      expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                                                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:115:54
[INFO] [stdout]     |
[INFO] [stdout] 115 |     fn module_get_element_settings(&self, module_id: UID) -> Result<Values, SessionError>;
[INFO] [stdout]     |                                                      ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_set_element_settings` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:613:20
[INFO] [stdout]     |
[INFO] [stdout] 613 |         module_id: &ModulePath,
[INFO] [stdout]     |                    ^^^^^^^^^^^
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                    help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:116:54
[INFO] [stdout]     |
[INFO] [stdout] 116 |     fn module_set_element_settings(&self, module_id: UID, data: Values)
[INFO] [stdout]     |                                                      ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, data::Values) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath, data::Values) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_get_location_settings` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:620:55
[INFO] [stdout]     |
[INFO] [stdout] 620 |     fn module_get_location_settings(&self, module_id: &ModulePath) -> Result<Values, SessionError> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                                                       help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:119:55
[INFO] [stdout]     |
[INFO] [stdout] 119 |     fn module_get_location_settings(&self, module_id: UID) -> Result<Values, SessionError>;
[INFO] [stdout]     |                                                       ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_set_location_settings` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:630:20
[INFO] [stdout]     |
[INFO] [stdout] 630 |         module_id: &ModulePath,
[INFO] [stdout]     |                    ^^^^^^^^^^^
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                    help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:122:20
[INFO] [stdout]     |
[INFO] [stdout] 122 |         module_id: UID,
[INFO] [stdout]     |                    ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, data::Values) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath, data::Values) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_init_location` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:639:20
[INFO] [stdout]     |
[INFO] [stdout] 639 |         module_id: &ModulePath,
[INFO] [stdout]     |                    ^^^^^^^^^^^
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                    help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:126:47
[INFO] [stdout]     |
[INFO] [stdout] 126 |     fn module_init_location(&self, module_id: UID, location_id: UID) -> Result<(), SessionError>;
[INFO] [stdout]     |                                               ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath, &location::LocationPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_init_element` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:652:20
[INFO] [stdout]     |
[INFO] [stdout] 652 |         module_id: &ModulePath,
[INFO] [stdout]     |                    ^^^^^^^^^^^
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                    help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:128:46
[INFO] [stdout]     |
[INFO] [stdout] 128 |     fn module_init_element(&self, module_id: UID, element_id: UID) -> Result<(), SessionError>;
[INFO] [stdout]     |                                              ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath, &element::ElementPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_accept_url` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:669:44
[INFO] [stdout]     |
[INFO] [stdout] 669 |     fn module_accept_url(&self, module_id: &ModulePath, url: String) -> Result<bool, SessionError> {
[INFO] [stdout]     |                                            ^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                                            help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:130:44
[INFO] [stdout]     |
[INFO] [stdout] 130 |     fn module_accept_url(&self, module_id: UID, url: String) -> Result<bool, SessionError>;
[INFO] [stdout]     |                                            ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, std::string::String) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath, std::string::String) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_accept_extension` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:675:20
[INFO] [stdout]     |
[INFO] [stdout] 675 |         module_id: &ModulePath,
[INFO] [stdout]     |                    ^^^^^^^^^^^
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                    help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:132:50
[INFO] [stdout]     |
[INFO] [stdout] 132 |     fn module_accept_extension(&self, module_id: UID, filename: &str)
[INFO] [stdout]     |                                                  ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, &str) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath, &str) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_accepted_protocols` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:687:20
[INFO] [stdout]     |
[INFO] [stdout] 687 |         module_id: &ModulePath,
[INFO] [stdout]     |                    ^^^^^^^^^^^
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                    help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:135:52
[INFO] [stdout]     |
[INFO] [stdout] 135 |     fn module_accepted_protocols(&self, module_id: UID) -> Result<Vec<String>, SessionError>;
[INFO] [stdout]     |                                                    ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_accepted_extensions` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:698:20
[INFO] [stdout]     |
[INFO] [stdout] 698 |         module_id: &ModulePath,
[INFO] [stdout]     |                    ^^^^^^^^^^^
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                    help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:136:53
[INFO] [stdout]     |
[INFO] [stdout] 136 |     fn module_accepted_extensions(&self, module_id: UID) -> Result<Vec<String>, SessionError>;
[INFO] [stdout]     |                                                     ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_step_element` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:709:20
[INFO] [stdout]     |
[INFO] [stdout] 709 |         module_id: &ModulePath,
[INFO] [stdout]     |                    ^^^^^^^^^^^
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                    help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:140:20
[INFO] [stdout]     |
[INFO] [stdout] 140 |         module_id: UID,
[INFO] [stdout]     |                    ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, u64, module::ControlFlow, storage::Storage) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath, &element::ElementPath, module::ControlFlow, storage::Storage) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_step_location` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:749:20
[INFO] [stdout]     |
[INFO] [stdout] 749 |         module_id: &ModulePath,
[INFO] [stdout]     |                    ^^^^^^^^^^^
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                    help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:148:20
[INFO] [stdout]     |
[INFO] [stdout] 148 |         module_id: UID,
[INFO] [stdout]     |                    ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, u64, module::ControlFlow, storage::Storage) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath, &location::LocationPath, module::ControlFlow, storage::Storage) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `create_element` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:769:55
[INFO] [stdout]     |
[INFO] [stdout] 769 |     fn create_element(&self, name: &str, location_id: &LocationPath) -> Result<ERef, SessionError> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       expected `u64`, found `&location::LocationPath`
[INFO] [stdout]     |                                                       help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:162:55
[INFO] [stdout]     |
[INFO] [stdout] 162 |     fn create_element(&self, name: &str, location_id: UID) -> Result<ERef, SessionError>;
[INFO] [stdout]     |                                                       ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, &str, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &str, &location::LocationPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `move_element` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:920:21
[INFO] [stdout]     |
[INFO] [stdout] 920 |         element_id: &ElementPath,
[INFO] [stdout]     |                     ^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     expected `u64`, found `&element::ElementPath`
[INFO] [stdout]     |                     help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:164:37
[INFO] [stdout]     |
[INFO] [stdout] 164 |     fn move_element(&self, element: UID, location_id: UID) -> Result<(), SessionError>;
[INFO] [stdout]     |                                     ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath, &location::LocationPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `destroy_element` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:942:43
[INFO] [stdout]     |
[INFO] [stdout] 942 |     fn destroy_element(&self, element_id: ElementPath) -> Result<ERow, SessionError> {
[INFO] [stdout]     |                                           ^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           expected `u64`, found `element::ElementPath`
[INFO] [stdout]     |                                           help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:165:43
[INFO] [stdout]     |
[INFO] [stdout] 165 |     fn destroy_element(&self, element_id: UID) -> Result<ERow, SessionError>;
[INFO] [stdout]     |                                           ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, element::ElementPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_get_name` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:980:44
[INFO] [stdout]     |
[INFO] [stdout] 980 |     fn element_get_name(&self, element_id: &ElementPath) -> Result<String, SessionError> {
[INFO] [stdout]     |                                            ^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            expected `u64`, found `&element::ElementPath`
[INFO] [stdout]     |                                            help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:167:44
[INFO] [stdout]     |
[INFO] [stdout] 167 |     fn element_get_name(&self, element_id: UID) -> Result<String, SessionError>;
[INFO] [stdout]     |                                            ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_set_name` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:984:44
[INFO] [stdout]     |
[INFO] [stdout] 984 |     fn element_set_name(&self, element_id: &ElementPath, name: &str) -> Result<(), SessionError> {
[INFO] [stdout]     |                                            ^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            expected `u64`, found `&element::ElementPath`
[INFO] [stdout]     |                                            help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:168:44
[INFO] [stdout]     |
[INFO] [stdout] 168 |     fn element_set_name(&self, element_id: UID, name: &str) -> Result<(), SessionError>;
[INFO] [stdout]     |                                            ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, &str) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath, &str) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_get_desc` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:989:44
[INFO] [stdout]     |
[INFO] [stdout] 989 |     fn element_get_desc(&self, element_id: &ElementPath) -> Result<String, SessionError> {
[INFO] [stdout]     |                                            ^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            expected `u64`, found `&element::ElementPath`
[INFO] [stdout]     |                                            help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:170:44
[INFO] [stdout]     |
[INFO] [stdout] 170 |     fn element_get_desc(&self, element_id: UID) -> Result<String, SessionError>;
[INFO] [stdout]     |                                            ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_set_desc` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:993:44
[INFO] [stdout]     |
[INFO] [stdout] 993 |     fn element_set_desc(&self, element_id: &ElementPath, desc: &str) -> Result<(), SessionError> {
[INFO] [stdout]     |                                            ^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            expected `u64`, found `&element::ElementPath`
[INFO] [stdout]     |                                            help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:171:44
[INFO] [stdout]     |
[INFO] [stdout] 171 |     fn element_set_desc(&self, element_id: UID, desc: &str) -> Result<(), SessionError>;
[INFO] [stdout]     |                                            ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, &str) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath, &str) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_get_meta` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:998:44
[INFO] [stdout]     |
[INFO] [stdout] 998 |     fn element_get_meta(&self, element_id: &ElementPath) -> Result<String, SessionError> {
[INFO] [stdout]     |                                            ^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            expected `u64`, found `&element::ElementPath`
[INFO] [stdout]     |                                            help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:173:44
[INFO] [stdout]     |
[INFO] [stdout] 173 |     fn element_get_meta(&self, element_id: UID) -> Result<String, SessionError>;
[INFO] [stdout]     |                                            ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_set_meta` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1002:44
[INFO] [stdout]      |
[INFO] [stdout] 1002 |     fn element_set_meta(&self, element_id: &ElementPath, meta: &str) -> Result<(), SessionError> {
[INFO] [stdout]      |                                            ^^^^^^^^^^^^
[INFO] [stdout]      |                                            |
[INFO] [stdout]      |                                            expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                                            help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:174:44
[INFO] [stdout]      |
[INFO] [stdout] 174  |     fn element_set_meta(&self, element_id: UID, meta: &str) -> Result<(), SessionError>;
[INFO] [stdout]      |                                            ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, &str) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath, &str) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_get_url` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1007:43
[INFO] [stdout]      |
[INFO] [stdout] 1007 |     fn element_get_url(&self, element_id: &ElementPath) -> Result<Option<String>, SessionError> {
[INFO] [stdout]      |                                           ^^^^^^^^^^^^
[INFO] [stdout]      |                                           |
[INFO] [stdout]      |                                           expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                                           help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:176:43
[INFO] [stdout]      |
[INFO] [stdout] 176  |     fn element_get_url(&self, element_id: UID) -> Result<Option<String>, SessionError>;
[INFO] [stdout]      |                                           ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_set_url` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1013:21
[INFO] [stdout]      |
[INFO] [stdout] 1013 |         element_id: &ElementPath,
[INFO] [stdout]      |                     ^^^^^^^^^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                     help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:177:43
[INFO] [stdout]      |
[INFO] [stdout] 177  |     fn element_set_url(&self, element_id: UID, url: Option<String>) -> Result<(), SessionError>;
[INFO] [stdout]      |                                           ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, std::option::Option<_>) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath, std::option::Option<_>) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_get_element_data` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1020:52
[INFO] [stdout]      |
[INFO] [stdout] 1020 |     fn element_get_element_data(&self, element_id: &ElementPath) -> Result<Values, SessionError> {
[INFO] [stdout]      |                                                    ^^^^^^^^^^^^
[INFO] [stdout]      |                                                    |
[INFO] [stdout]      |                                                    expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                                                    help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:179:52
[INFO] [stdout]      |
[INFO] [stdout] 179  |     fn element_get_element_data(&self, element_id: UID) -> Result<Values, SessionError>;
[INFO] [stdout]      |                                                    ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_set_element_data` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1026:21
[INFO] [stdout]      |
[INFO] [stdout] 1026 |         element_id: &ElementPath,
[INFO] [stdout]      |                     ^^^^^^^^^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                     help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:180:52
[INFO] [stdout]      |
[INFO] [stdout] 180  |     fn element_set_element_data(&self, element_id: UID, data: Values) -> Result<(), SessionError>;
[INFO] [stdout]      |                                                    ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, data::Values) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath, data::Values) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_get_module_data` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1033:51
[INFO] [stdout]      |
[INFO] [stdout] 1033 |     fn element_get_module_data(&self, element_id: &ElementPath) -> Result<Values, SessionError> {
[INFO] [stdout]      |                                                   ^^^^^^^^^^^^
[INFO] [stdout]      |                                                   |
[INFO] [stdout]      |                                                   expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                                                   help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:182:51
[INFO] [stdout]      |
[INFO] [stdout] 182  |     fn element_get_module_data(&self, element_id: UID) -> Result<Values, SessionError>;
[INFO] [stdout]      |                                                   ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_set_module_data` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1039:21
[INFO] [stdout]      |
[INFO] [stdout] 1039 |         element_id: &ElementPath,
[INFO] [stdout]      |                     ^^^^^^^^^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                     help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:183:51
[INFO] [stdout]      |
[INFO] [stdout] 183  |     fn element_set_module_data(&self, element_id: UID, data: Values) -> Result<(), SessionError>;
[INFO] [stdout]      |                                                   ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, data::Values) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath, data::Values) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_get_module` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1046:46
[INFO] [stdout]      |
[INFO] [stdout] 1046 |     fn element_get_module(&self, element_id: &ElementPath) -> Result<Option<MRef>, SessionError> {
[INFO] [stdout]      |                                              ^^^^^^^^^^^^
[INFO] [stdout]      |                                              |
[INFO] [stdout]      |                                              expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                                              help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:185:46
[INFO] [stdout]      |
[INFO] [stdout] 185  |     fn element_get_module(&self, element_id: UID) -> Result<Option<ModuleId>, SessionError>;
[INFO] [stdout]      |                                              ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<std::option::Option<module::ModuleId>, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath) -> Result<std::option::Option<Arc<RwLock<module::RefModulePath>>>, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_set_module` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1056:21
[INFO] [stdout]      |
[INFO] [stdout] 1056 |         element_id: &ElementPath,
[INFO] [stdout]      |                     ^^^^^^^^^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                     help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:186:43
[INFO] [stdout]      |
[INFO] [stdout] 186  |     fn element_set_module(&self, element: UID, module: Option<UID>) -> Result<(), SessionError>;
[INFO] [stdout]      |                                           ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, std::option::Option<u64>) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath, std::option::Option<module::ModulePath>) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_get_statuses` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1066:48
[INFO] [stdout]      |
[INFO] [stdout] 1066 |     fn element_get_statuses(&self, element_id: &ElementPath) -> Result<Vec<String>, SessionError> {
[INFO] [stdout]      |                                                ^^^^^^^^^^^^
[INFO] [stdout]      |                                                |
[INFO] [stdout]      |                                                expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                                                help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:188:48
[INFO] [stdout]      |
[INFO] [stdout] 188  |     fn element_get_statuses(&self, element_id: UID) -> Result<Vec<String>, SessionError>;
[INFO] [stdout]      |                                                ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_set_statuses` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1072:21
[INFO] [stdout]      |
[INFO] [stdout] 1072 |         element_id: &ElementPath,
[INFO] [stdout]      |                     ^^^^^^^^^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                     help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:189:45
[INFO] [stdout]      |
[INFO] [stdout] 189  |     fn element_set_statuses(&self, element: UID, statuses: Vec<String>)
[INFO] [stdout]      |                                             ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, std::vec::Vec<_>) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath, std::vec::Vec<_>) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_get_status` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1079:46
[INFO] [stdout]      |
[INFO] [stdout] 1079 |     fn element_get_status(&self, element_id: &ElementPath) -> Result<usize, SessionError> {
[INFO] [stdout]      |                                              ^^^^^^^^^^^^
[INFO] [stdout]      |                                              |
[INFO] [stdout]      |                                              expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                                              help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:192:46
[INFO] [stdout]      |
[INFO] [stdout] 192  |     fn element_get_status(&self, element_id: UID) -> Result<usize, SessionError>;
[INFO] [stdout]      |                                              ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_set_status` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1085:21
[INFO] [stdout]      |
[INFO] [stdout] 1085 |         element_id: &ElementPath,
[INFO] [stdout]      |                     ^^^^^^^^^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                     help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:193:46
[INFO] [stdout]      |
[INFO] [stdout] 193  |     fn element_set_status(&self, element_id: UID, status: usize) -> Result<(), SessionError>;
[INFO] [stdout]      |                                              ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, _) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath, _) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_get_data` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1097:44
[INFO] [stdout]      |
[INFO] [stdout] 1097 |     fn element_get_data(&self, element_id: &ElementPath) -> Result<Data, SessionError> {
[INFO] [stdout]      |                                            ^^^^^^^^^^^^
[INFO] [stdout]      |                                            |
[INFO] [stdout]      |                                            expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                                            help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:195:44
[INFO] [stdout]      |
[INFO] [stdout] 195  |     fn element_get_data(&self, element_id: UID) -> Result<Data, SessionError>;
[INFO] [stdout]      |                                            ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_set_data` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1101:44
[INFO] [stdout]      |
[INFO] [stdout] 1101 |     fn element_set_data(&self, element_id: &ElementPath, data: Data) -> Result<(), SessionError> {
[INFO] [stdout]      |                                            ^^^^^^^^^^^^
[INFO] [stdout]      |                                            |
[INFO] [stdout]      |                                            expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                                            help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:196:44
[INFO] [stdout]      |
[INFO] [stdout] 196  |     fn element_set_data(&self, element_id: UID, data: Data) -> Result<(), SessionError>;
[INFO] [stdout]      |                                            ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, data::Data) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath, data::Data) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_get_progress` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1106:48
[INFO] [stdout]      |
[INFO] [stdout] 1106 |     fn element_get_progress(&self, element_id: &ElementPath) -> Result<f32, SessionError> {
[INFO] [stdout]      |                                                ^^^^^^^^^^^^
[INFO] [stdout]      |                                                |
[INFO] [stdout]      |                                                expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                                                help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:198:48
[INFO] [stdout]      |
[INFO] [stdout] 198  |     fn element_get_progress(&self, element_id: UID) -> Result<f32, SessionError>;
[INFO] [stdout]      |                                                ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_set_progress` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1112:21
[INFO] [stdout]      |
[INFO] [stdout] 1112 |         element_id: &ElementPath,
[INFO] [stdout]      |                     ^^^^^^^^^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                     help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:199:48
[INFO] [stdout]      |
[INFO] [stdout] 199  |     fn element_set_progress(&self, element_id: UID, progress: f32) -> Result<(), SessionError>;
[INFO] [stdout]      |                                                ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, _) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath, _) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_get_should_save` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1119:51
[INFO] [stdout]      |
[INFO] [stdout] 1119 |     fn element_get_should_save(&self, element_id: &ElementPath) -> Result<bool, SessionError> {
[INFO] [stdout]      |                                                   ^^^^^^^^^^^^
[INFO] [stdout]      |                                                   |
[INFO] [stdout]      |                                                   expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                                                   help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:201:51
[INFO] [stdout]      |
[INFO] [stdout] 201  |     fn element_get_should_save(&self, element_id: UID) -> Result<bool, SessionError>;
[INFO] [stdout]      |                                                   ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_set_should_save` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1125:21
[INFO] [stdout]      |
[INFO] [stdout] 1125 |         element_id: &ElementPath,
[INFO] [stdout]      |                     ^^^^^^^^^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                     help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:202:48
[INFO] [stdout]      |
[INFO] [stdout] 202  |     fn element_set_should_save(&self, element: UID, should_save: bool) -> Result<(), SessionError>;
[INFO] [stdout]      |                                                ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, _) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath, _) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_get_enabled` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1132:47
[INFO] [stdout]      |
[INFO] [stdout] 1132 |     fn element_get_enabled(&self, element_id: &ElementPath) -> Result<bool, SessionError> {
[INFO] [stdout]      |                                               ^^^^^^^^^^^^
[INFO] [stdout]      |                                               |
[INFO] [stdout]      |                                               expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                                               help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:204:47
[INFO] [stdout]      |
[INFO] [stdout] 204  |     fn element_get_enabled(&self, element_id: UID) -> Result<bool, SessionError>;
[INFO] [stdout]      |                                               ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_set_enabled` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1138:21
[INFO] [stdout]      |
[INFO] [stdout] 1138 |         element_id: &ElementPath,
[INFO] [stdout]      |                     ^^^^^^^^^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                     help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:207:21
[INFO] [stdout]      |
[INFO] [stdout] 207  |         element_id: UID,
[INFO] [stdout]      |                     ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, _, std::option::Option<_>) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath, _, std::option::Option<_>) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_is_error` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1214:44
[INFO] [stdout]      |
[INFO] [stdout] 1214 |     fn element_is_error(&self, element_id: &ElementPath) -> Result<bool, SessionError> {
[INFO] [stdout]      |                                            ^^^^^^^^^^^^
[INFO] [stdout]      |                                            |
[INFO] [stdout]      |                                            expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                                            help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:212:44
[INFO] [stdout]      |
[INFO] [stdout] 212  |     fn element_is_error(&self, element_id: UID) -> Result<bool, SessionError>;
[INFO] [stdout]      |                                            ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_resolv_module` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1218:49
[INFO] [stdout]      |
[INFO] [stdout] 1218 |     fn element_resolv_module(&self, element_id: &ElementPath) -> Result<bool, SessionError> {
[INFO] [stdout]      |                                                 ^^^^^^^^^^^^
[INFO] [stdout]      |                                                 |
[INFO] [stdout]      |                                                 expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                                                 help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:214:49
[INFO] [stdout]      |
[INFO] [stdout] 214  |     fn element_resolv_module(&self, element_id: UID) -> Result<bool, SessionError>;
[INFO] [stdout]      |                                                 ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_wait` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1245:40
[INFO] [stdout]      |
[INFO] [stdout] 1245 |     fn element_wait(&self, element_id: &ElementPath) -> Result<(), SessionError> {
[INFO] [stdout]      |                                        ^^^^^^^^^^^^
[INFO] [stdout]      |                                        |
[INFO] [stdout]      |                                        expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                                        help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:217:40
[INFO] [stdout]      |
[INFO] [stdout] 217  |     fn element_wait(&self, element_id: UID) -> Result<(), SessionError>;
[INFO] [stdout]      |                                        ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_get_element_info` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1255:21
[INFO] [stdout]      |
[INFO] [stdout] 1255 |         element_id: &ElementPath,
[INFO] [stdout]      |                     ^^^^^^^^^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                     help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:219:52
[INFO] [stdout]      |
[INFO] [stdout] 219  |     fn element_get_element_info(&self, element_id: UID) -> Result<ElementInfo, SessionError>;
[INFO] [stdout]      |                                                    ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `create_location` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1388:22
[INFO] [stdout]      |
[INFO] [stdout] 1388 |         location_id: &LocationPath,
[INFO] [stdout]      |                      ^^^^^^^^^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:229:56
[INFO] [stdout]      |
[INFO] [stdout] 229  |     fn create_location(&self, name: &str, location_id: UID) -> Result<LRef, SessionError>;
[INFO] [stdout]      |                                                        ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, &str, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &str, &location::LocationPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `get_locations_len` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1675:46
[INFO] [stdout]      |
[INFO] [stdout] 1675 |     fn get_locations_len(&self, location_id: &LocationPath) -> Result<usize, SessionError> {
[INFO] [stdout]      |                                              ^^^^^^^^^^^^^
[INFO] [stdout]      |                                              |
[INFO] [stdout]      |                                              expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                                              help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:231:46
[INFO] [stdout]      |
[INFO] [stdout] 231  |     fn get_locations_len(&self, location_id: UID) -> Result<usize, SessionError>;
[INFO] [stdout]      |                                              ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `get_locations` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1681:22
[INFO] [stdout]      |
[INFO] [stdout] 1681 |         location_id: &LocationPath,
[INFO] [stdout]      |                      ^^^^^^^^^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:234:22
[INFO] [stdout]      |
[INFO] [stdout] 234  |         location_id: UID,
[INFO] [stdout]      |                      ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, std::ops::Range<_>) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath, std::ops::Range<_>) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `destroy_location` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1692:45
[INFO] [stdout]      |
[INFO] [stdout] 1692 |     fn destroy_location(&self, location_id: LocationPath) -> Result<LRow, SessionError> {
[INFO] [stdout]      |                                             ^^^^^^^^^^^^
[INFO] [stdout]      |                                             |
[INFO] [stdout]      |                                             expected `u64`, found `location::LocationPath`
[INFO] [stdout]      |                                             help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:237:45
[INFO] [stdout]      |
[INFO] [stdout] 237  |     fn destroy_location(&self, location_id: UID) -> Result<LRow, SessionError>;
[INFO] [stdout]      |                                             ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, location::LocationPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_get_name` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1753:46
[INFO] [stdout]      |
[INFO] [stdout] 1753 |     fn location_get_name(&self, location_id: &LocationPath) -> Result<String, SessionError> {
[INFO] [stdout]      |                                              ^^^^^^^^^^^^^
[INFO] [stdout]      |                                              |
[INFO] [stdout]      |                                              expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                                              help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:241:46
[INFO] [stdout]      |
[INFO] [stdout] 241  |     fn location_get_name(&self, location_id: UID) -> Result<String, SessionError>;
[INFO] [stdout]      |                                              ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_set_name` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1759:22
[INFO] [stdout]      |
[INFO] [stdout] 1759 |         location_id: &LocationPath,
[INFO] [stdout]      |                      ^^^^^^^^^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:242:46
[INFO] [stdout]      |
[INFO] [stdout] 242  |     fn location_set_name(&self, location_id: UID, name: &str) -> Result<(), SessionError>;
[INFO] [stdout]      |                                              ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, &str) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath, &str) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_get_desc` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1766:46
[INFO] [stdout]      |
[INFO] [stdout] 1766 |     fn location_get_desc(&self, location_id: &LocationPath) -> Result<String, SessionError> {
[INFO] [stdout]      |                                              ^^^^^^^^^^^^^
[INFO] [stdout]      |                                              |
[INFO] [stdout]      |                                              expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                                              help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:244:46
[INFO] [stdout]      |
[INFO] [stdout] 244  |     fn location_get_desc(&self, location_id: UID) -> Result<String, SessionError>;
[INFO] [stdout]      |                                              ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_set_desc` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1772:22
[INFO] [stdout]      |
[INFO] [stdout] 1772 |         location_id: &LocationPath,
[INFO] [stdout]      |                      ^^^^^^^^^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:245:46
[INFO] [stdout]      |
[INFO] [stdout] 245  |     fn location_set_desc(&self, location_id: UID, desc: &str) -> Result<(), SessionError>;
[INFO] [stdout]      |                                              ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, &str) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath, &str) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_get_path` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1779:46
[INFO] [stdout]      |
[INFO] [stdout] 1779 |     fn location_get_path(&self, location_id: &LocationPath) -> Result<PathBuf, SessionError> {
[INFO] [stdout]      |                                              ^^^^^^^^^^^^^
[INFO] [stdout]      |                                              |
[INFO] [stdout]      |                                              expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                                              help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:247:46
[INFO] [stdout]      |
[INFO] [stdout] 247  |     fn location_get_path(&self, location_id: UID) -> Result<PathBuf, SessionError>;
[INFO] [stdout]      |                                              ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_set_path` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1785:22
[INFO] [stdout]      |
[INFO] [stdout] 1785 |         location_id: &LocationPath,
[INFO] [stdout]      |                      ^^^^^^^^^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:248:46
[INFO] [stdout]      |
[INFO] [stdout] 248  |     fn location_set_path(&self, location_id: UID, path: PathBuf) -> Result<(), SessionError>;
[INFO] [stdout]      |                                              ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, PathBuf) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath, PathBuf) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_get_where_is` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1794:22
[INFO] [stdout]      |
[INFO] [stdout] 1794 |         location_id: &LocationPath,
[INFO] [stdout]      |                      ^^^^^^^^^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:250:50
[INFO] [stdout]      |
[INFO] [stdout] 250  |     fn location_get_where_is(&self, location_id: UID) -> Result<WhereIsLocation, SessionError>;
[INFO] [stdout]      |                                                  ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_set_where_is` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1801:22
[INFO] [stdout]      |
[INFO] [stdout] 1801 |         location_id: &LocationPath,
[INFO] [stdout]      |                      ^^^^^^^^^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:253:22
[INFO] [stdout]      |
[INFO] [stdout] 253  |         location_id: UID,
[INFO] [stdout]      |                      ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, location::WhereIsLocation) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath, location::WhereIsLocation) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_get_should_save` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1808:53
[INFO] [stdout]      |
[INFO] [stdout] 1808 |     fn location_get_should_save(&self, location_id: &LocationPath) -> Result<bool, SessionError> {
[INFO] [stdout]      |                                                     ^^^^^^^^^^^^^
[INFO] [stdout]      |                                                     |
[INFO] [stdout]      |                                                     expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                                                     help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:257:53
[INFO] [stdout]      |
[INFO] [stdout] 257  |     fn location_get_should_save(&self, location_id: UID) -> Result<bool, SessionError>;
[INFO] [stdout]      |                                                     ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_set_should_save` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1814:22
[INFO] [stdout]      |
[INFO] [stdout] 1814 |         location_id: &LocationPath,
[INFO] [stdout]      |                      ^^^^^^^^^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:260:22
[INFO] [stdout]      |
[INFO] [stdout] 260  |         location_id: UID,
[INFO] [stdout]      |                      ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, _) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath, _) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_get_elements_len` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1821:54
[INFO] [stdout]      |
[INFO] [stdout] 1821 |     fn location_get_elements_len(&self, location_id: &LocationPath) -> Result<usize, SessionError> {
[INFO] [stdout]      |                                                      ^^^^^^^^^^^^^
[INFO] [stdout]      |                                                      |
[INFO] [stdout]      |                                                      expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                                                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:264:54
[INFO] [stdout]      |
[INFO] [stdout] 264  |     fn location_get_elements_len(&self, location_id: UID) -> Result<usize, SessionError>;
[INFO] [stdout]      |                                                      ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_get_elements` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1827:22
[INFO] [stdout]      |
[INFO] [stdout] 1827 |         location_id: &LocationPath,
[INFO] [stdout]      |                      ^^^^^^^^^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:267:22
[INFO] [stdout]      |
[INFO] [stdout] 267  |         location_id: UID,
[INFO] [stdout]      |                      ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, std::ops::Range<_>) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath, std::ops::Range<_>) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_get_module` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1842:22
[INFO] [stdout]      |
[INFO] [stdout] 1842 |         location_id: &LocationPath,
[INFO] [stdout]      |                      ^^^^^^^^^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:271:48
[INFO] [stdout]      |
[INFO] [stdout] 271  |     fn location_get_module(&self, location_id: UID) -> Result<Option<ModuleId>, SessionError>;
[INFO] [stdout]      |                                                ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<std::option::Option<module::ModuleId>, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath) -> Result<std::option::Option<Arc<RwLock<module::RefModulePath>>>, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_set_module` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1849:22
[INFO] [stdout]      |
[INFO] [stdout] 1849 |         location_id: &LocationPath,
[INFO] [stdout]      |                      ^^^^^^^^^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:274:22
[INFO] [stdout]      |
[INFO] [stdout] 274  |         location_id: UID,
[INFO] [stdout]      |                      ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, std::option::Option<u64>) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath, std::option::Option<module::ModulePath>) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_get_settings` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1861:50
[INFO] [stdout]      |
[INFO] [stdout] 1861 |     fn location_get_settings(&self, location_id: &LocationPath) -> Result<Values, SessionError> {
[INFO] [stdout]      |                                                  ^^^^^^^^^^^^^
[INFO] [stdout]      |                                                  |
[INFO] [stdout]      |                                                  expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                                                  help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:278:50
[INFO] [stdout]      |
[INFO] [stdout] 278  |     fn location_get_settings(&self, location_id: UID) -> Result<Values, SessionError>;
[INFO] [stdout]      |                                                  ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_set_settings` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1867:22
[INFO] [stdout]      |
[INFO] [stdout] 1867 |         location_id: &LocationPath,
[INFO] [stdout]      |                      ^^^^^^^^^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:279:50
[INFO] [stdout]      |
[INFO] [stdout] 279  |     fn location_set_settings(&self, location_id: UID, data: Values) -> Result<(), SessionError>;
[INFO] [stdout]      |                                                  ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, data::Values) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath, data::Values) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_get_module_settings` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1876:22
[INFO] [stdout]      |
[INFO] [stdout] 1876 |         location_id: &LocationPath,
[INFO] [stdout]      |                      ^^^^^^^^^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:281:57
[INFO] [stdout]      |
[INFO] [stdout] 281  |     fn location_get_module_settings(&self, location_id: UID) -> Result<Values, SessionError>;
[INFO] [stdout]      |                                                         ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_set_module_settings` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1891:22
[INFO] [stdout]      |
[INFO] [stdout] 1891 |         location_id: &LocationPath,
[INFO] [stdout]      |                      ^^^^^^^^^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:284:22
[INFO] [stdout]      |
[INFO] [stdout] 284  |         location_id: UID,
[INFO] [stdout]      |                      ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, data::Values) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath, data::Values) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_get_statuses` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1900:22
[INFO] [stdout]      |
[INFO] [stdout] 1900 |         location_id: &LocationPath,
[INFO] [stdout]      |                      ^^^^^^^^^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:288:50
[INFO] [stdout]      |
[INFO] [stdout] 288  |     fn location_get_statuses(&self, location_id: UID) -> Result<Vec<String>, SessionError>;
[INFO] [stdout]      |                                                  ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_set_statuses` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1907:22
[INFO] [stdout]      |
[INFO] [stdout] 1907 |         location_id: &LocationPath,
[INFO] [stdout]      |                      ^^^^^^^^^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:291:22
[INFO] [stdout]      |
[INFO] [stdout] 291  |         location_id: UID,
[INFO] [stdout]      |                      ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, std::vec::Vec<_>) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath, std::vec::Vec<_>) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_get_status` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1914:48
[INFO] [stdout]      |
[INFO] [stdout] 1914 |     fn location_get_status(&self, location_id: &LocationPath) -> Result<usize, SessionError> {
[INFO] [stdout]      |                                                ^^^^^^^^^^^^^
[INFO] [stdout]      |                                                |
[INFO] [stdout]      |                                                expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                                                help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:295:48
[INFO] [stdout]      |
[INFO] [stdout] 295  |     fn location_get_status(&self, location_id: UID) -> Result<usize, SessionError>;
[INFO] [stdout]      |                                                ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_set_status` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1920:22
[INFO] [stdout]      |
[INFO] [stdout] 1920 |         location_id: &LocationPath,
[INFO] [stdout]      |                      ^^^^^^^^^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:296:48
[INFO] [stdout]      |
[INFO] [stdout] 296  |     fn location_set_status(&self, location_id: UID, status: usize) -> Result<(), SessionError>;
[INFO] [stdout]      |                                                ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, _) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath, _) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_get_progress` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1927:50
[INFO] [stdout]      |
[INFO] [stdout] 1927 |     fn location_get_progress(&self, location_id: &LocationPath) -> Result<f32, SessionError> {
[INFO] [stdout]      |                                                  ^^^^^^^^^^^^^
[INFO] [stdout]      |                                                  |
[INFO] [stdout]      |                                                  expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                                                  help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:298:50
[INFO] [stdout]      |
[INFO] [stdout] 298  |     fn location_get_progress(&self, location_id: UID) -> Result<f32, SessionError>;
[INFO] [stdout]      |                                                  ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_set_progress` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1933:22
[INFO] [stdout]      |
[INFO] [stdout] 1933 |         location_id: &LocationPath,
[INFO] [stdout]      |                      ^^^^^^^^^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:299:50
[INFO] [stdout]      |
[INFO] [stdout] 299  |     fn location_set_progress(&self, location_id: UID, progress: f32) -> Result<(), SessionError>;
[INFO] [stdout]      |                                                  ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, _) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath, _) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_is_enabled` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1940:48
[INFO] [stdout]      |
[INFO] [stdout] 1940 |     fn location_is_enabled(&self, location_id: &LocationPath) -> Result<bool, SessionError> {
[INFO] [stdout]      |                                                ^^^^^^^^^^^^^
[INFO] [stdout]      |                                                |
[INFO] [stdout]      |                                                expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                                                help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:301:48
[INFO] [stdout]      |
[INFO] [stdout] 301  |     fn location_is_enabled(&self, location_id: UID) -> Result<bool, SessionError>;
[INFO] [stdout]      |                                                ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_set_enabled` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1946:22
[INFO] [stdout]      |
[INFO] [stdout] 1946 |         location_id: &LocationPath,
[INFO] [stdout]      |                      ^^^^^^^^^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:304:22
[INFO] [stdout]      |
[INFO] [stdout] 304  |         location_id: UID,
[INFO] [stdout]      |                      ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, _, std::option::Option<_>) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath, _, std::option::Option<_>) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_is_error` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1953:46
[INFO] [stdout]      |
[INFO] [stdout] 1953 |     fn location_is_error(&self, location_id: &LocationPath) -> Result<bool, SessionError> {
[INFO] [stdout]      |                                              ^^^^^^^^^^^^^
[INFO] [stdout]      |                                              |
[INFO] [stdout]      |                                              expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                                              help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:309:46
[INFO] [stdout]      |
[INFO] [stdout] 309  |     fn location_is_error(&self, location_id: UID) -> Result<bool, SessionError>;
[INFO] [stdout]      |                                              ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_get_location_info` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1959:22
[INFO] [stdout]      |
[INFO] [stdout] 1959 |         location_id: &LocationPath,
[INFO] [stdout]      |                      ^^^^^^^^^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:311:55
[INFO] [stdout]      |
[INFO] [stdout] 311  |     fn location_get_location_info(&self, location_id: UID) -> Result<LocationInfo, SessionError>;
[INFO] [stdout]      |                                                       ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0046]: not all trait items implemented, missing: `notify`, `emit`, `subscribe`, `unsubscribe`, `get_ref`, `get_module_from_path`, `get_element_from_path`, `get_location_from_path`
[INFO] [stdout]    --> src/local_session/session.rs:338:1
[INFO] [stdout]     |
[INFO] [stdout] 338 | impl TSession for Arc<RwLock<LocalSession>> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing `notify`, `emit`, `subscribe`, `unsubscribe`, `get_ref`, `get_module_from_path`, `get_element_from_path`, `get_location_from_path` in implementation
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/session.rs:313:5
[INFO] [stdout]     |
[INFO] [stdout] 313 |     fn notify(&self, uid: UID, event: Event) -> Result<(), SessionError>;
[INFO] [stdout]     |     --------------------------------------------------------------------- `notify` from trait
[INFO] [stdout] 314 |     fn emit(&self, who_emited: UID, event: Event) -> Result<(), SessionError>;
[INFO] [stdout]     |     -------------------------------------------------------------------------- `emit` from trait
[INFO] [stdout] 315 |     fn subscribe(&self, uid: UID, to: UID) -> Result<(), SessionError>;
[INFO] [stdout]     |     ------------------------------------------------------------------- `subscribe` from trait
[INFO] [stdout] 316 |     fn unsubscribe(&self, uid: UID, to: UID) -> Result<(), SessionError>;
[INFO] [stdout]     |     --------------------------------------------------------------------- `unsubscribe` from trait
[INFO] [stdout] ...
[INFO] [stdout] 327 |     fn get_ref(&self, uid: UID) -> Result<Ref, SessionError>;
[INFO] [stdout]     |     --------------------------------------------------------- `get_ref` from trait
[INFO] [stdout] 328 |
[INFO] [stdout] 329 |     fn get_module_from_path(&self, path: ModulePath) -> Result<ModuleId, SessionError>;
[INFO] [stdout]     |     ----------------------------------------------------------------------------------- `get_module_from_path` from trait
[INFO] [stdout] 330 |     fn get_element_from_path(&self, path: ElementPath) -> Result<ElementId, SessionError>;
[INFO] [stdout]     |     -------------------------------------------------------------------------------------- `get_element_from_path` from trait
[INFO] [stdout] 331 |     fn get_location_from_path(&self, path: LocationPath) -> Result<LocationId, SessionError>;
[INFO] [stdout]     |     ----------------------------------------------------------------------------------------- `get_location_from_path` from trait
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `add_module` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:126:10
[INFO] [stdout]     |
[INFO] [stdout] 126 |     ) -> Result<ModuleId, SessionError> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          expected `Arc<RwLock<module::RefModulePath>>`, found `module::ModuleId`
[INFO] [stdout]     |          help: change the output type to match the trait: `Result<Arc<RwLock<module::RefModulePath>>, session::SessionError>`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/local_session/session.rs:72:10
[INFO] [stdout]     |
[INFO] [stdout] 72  |     ) -> Result<MRef, SessionError>;
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, Box<_>, std::option::Option<_>, std::option::Option<_>) -> Result<Arc<RwLock<module::RefModulePath>>, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, Box<_>, std::option::Option<_>, std::option::Option<_>) -> Result<module::ModuleId, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0046]: not all trait items implemented, missing: `register_module`, `register_element`, `register_location`
[INFO] [stdout]   --> src/local_session/session.rs:81:1
[INFO] [stdout]    |
[INFO] [stdout] 74 |     fn register_module(&self, _ref: Ref) -> Result<ModuleId, SessionError>;
[INFO] [stdout]    |     ----------------------------------------------------------------------- `register_module` from trait
[INFO] [stdout] 75 |     fn register_element(&self, _ref: Ref) -> Result<ElementId, SessionError>;
[INFO] [stdout]    |     ------------------------------------------------------------------------- `register_element` from trait
[INFO] [stdout] 76 |     fn register_location(&self, _ref: Ref) -> Result<LocationId, SessionError>;
[INFO] [stdout]    |     --------------------------------------------------------------------------- `register_location` from trait
[INFO] [stdout] ...
[INFO] [stdout] 81 | impl TLocalSession for Arc<RwLock<LocalSession>> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing `register_module`, `register_element`, `register_location` in implementation
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `load_module` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:339:45
[INFO] [stdout]     |
[INFO] [stdout] 339 |     fn load_module(&self, path: PathBuf) -> Result<MRef, SessionError> {
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             expected `module::ModuleId`, found `Arc<RwLock<module::RefModulePath>>`
[INFO] [stdout]     |                                             help: change the output type to match the trait: `Result<module::ModuleId, session::SessionError>`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:76:45
[INFO] [stdout]     |
[INFO] [stdout] 76  |     fn load_module(&self, path: PathBuf) -> Result<ModuleId, SessionError>;
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, PathBuf) -> Result<module::ModuleId, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, PathBuf) -> Result<Arc<RwLock<module::RefModulePath>>, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `remove_module` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:348:40
[INFO] [stdout]     |
[INFO] [stdout] 348 |     fn remove_module(&self, module_id: ModulePath) -> Result<MRow, SessionError> {
[INFO] [stdout]     |                                        ^^^^^^^^^^
[INFO] [stdout]     |                                        |
[INFO] [stdout]     |                                        expected `u64`, found `module::ModulePath`
[INFO] [stdout]     |                                        help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:77:33
[INFO] [stdout]     |
[INFO] [stdout] 77  |     fn remove_module(&self, id: UID) -> Result<MRow, SessionError>;
[INFO] [stdout]     |                                 ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, module::ModulePath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `load_module_info` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:382:53
[INFO] [stdout]     |
[INFO] [stdout] 382 |     fn load_module_info(&self, info: ModuleInfo) -> Result<MRef, SessionError> {
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                     |
[INFO] [stdout]     |                                                     expected `module::ModuleId`, found `Arc<RwLock<module::RefModulePath>>`
[INFO] [stdout]     |                                                     help: change the output type to match the trait: `Result<module::ModuleId, session::SessionError>`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:78:53
[INFO] [stdout]     |
[INFO] [stdout] 78  |     fn load_module_info(&self, info: ModuleInfo) -> Result<ModuleId, SessionError>;
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, module::ModuleInfo) -> Result<module::ModuleId, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, module::ModuleInfo) -> Result<Arc<RwLock<module::RefModulePath>>, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `find_module` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:416:48
[INFO] [stdout]     |
[INFO] [stdout] 416 |     fn find_module(&self, info: ModuleInfo) -> Result<MRef, SessionError> {
[INFO] [stdout]     |                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                |
[INFO] [stdout]     |                                                expected `module::ModuleId`, found `Arc<RwLock<module::RefModulePath>>`
[INFO] [stdout]     |                                                help: change the output type to match the trait: `Result<module::ModuleId, session::SessionError>`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:79:48
[INFO] [stdout]     |
[INFO] [stdout] 79  |     fn find_module(&self, info: ModuleInfo) -> Result<ModuleId, SessionError>;
[INFO] [stdout]     |                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, module::ModuleInfo) -> Result<module::ModuleId, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, module::ModuleInfo) -> Result<Arc<RwLock<module::RefModulePath>>, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `register_action` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:442:20
[INFO] [stdout]     |
[INFO] [stdout] 442 |         module_id: &ModulePath,
[INFO] [stdout]     |                    ^^^^^^^^^^^
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                    help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:83:20
[INFO] [stdout]     |
[INFO] [stdout] 83  |         module_id: UID,
[INFO] [stdout]     |                    ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, std::string::String, std::vec::Vec<_>, fn(Arc<_>, std::vec::Vec<_>)) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath, std::string::String, std::vec::Vec<_>, fn(Arc<_>, std::vec::Vec<_>)) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `remove_action` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:459:36
[INFO] [stdout]     |
[INFO] [stdout] 459 |     fn remove_action(&self, owner: &ModulePath, name: String) -> Result<(), SessionError> {
[INFO] [stdout]     |                                    ^^^^^^^^^^^
[INFO] [stdout]     |                                    |
[INFO] [stdout]     |                                    expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                                    help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:88:40
[INFO] [stdout]     |
[INFO] [stdout] 88  |     fn remove_action(&self, module_id: UID, name: String) -> Result<(), SessionError>;
[INFO] [stdout]     |                                        ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, std::string::String) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath, std::string::String) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `run_action` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:497:16
[INFO] [stdout]     |
[INFO] [stdout] 497 |         owner: &ModulePath,
[INFO] [stdout]     |                ^^^^^^^^^^^
[INFO] [stdout]     |                |
[INFO] [stdout]     |                expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:91:37
[INFO] [stdout]     |
[INFO] [stdout] 91  |     fn run_action(&self, module_id: UID, name: String, data: Vec<Type>)
[INFO] [stdout]     |                                     ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, std::string::String, std::vec::Vec<_>) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath, std::string::String, std::vec::Vec<_>) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `get_modules` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:523:51
[INFO] [stdout]     |
[INFO] [stdout] 523 |     fn get_modules(&self, range: Range<usize>) -> Result<Vec<MRef>, SessionError> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   expected `module::ModuleId`, found `Arc<RwLock<module::RefModulePath>>`
[INFO] [stdout]     |                                                   help: change the output type to match the trait: `Result<std::vec::Vec<module::ModuleId>, session::SessionError>`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:95:51
[INFO] [stdout]     |
[INFO] [stdout] 95  |     fn get_modules(&self, range: Range<usize>) -> Result<Vec<ModuleId>, SessionError>;
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, std::ops::Range<_>) -> Result<std::vec::Vec<module::ModuleId>, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, std::ops::Range<_>) -> Result<std::vec::Vec<Arc<RwLock<module::RefModulePath>>>, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_get_name` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:534:42
[INFO] [stdout]     |
[INFO] [stdout] 534 |     fn module_get_name(&self, module_id: &ModulePath) -> Result<String, SessionError> {
[INFO] [stdout]     |                                          ^^^^^^^^^^^
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                                          help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:97:42
[INFO] [stdout]     |
[INFO] [stdout] 97  |     fn module_get_name(&self, module_id: UID) -> Result<String, SessionError>;
[INFO] [stdout]     |                                          ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_set_name` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:538:42
[INFO] [stdout]     |
[INFO] [stdout] 538 |     fn module_set_name(&self, module_id: &ModulePath, name: String) -> Result<(), SessionError> {
[INFO] [stdout]     |                                          ^^^^^^^^^^^
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                                          help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:98:42
[INFO] [stdout]     |
[INFO] [stdout] 98  |     fn module_set_name(&self, module_id: UID, name: String) -> Result<(), SessionError>;
[INFO] [stdout]     |                                          ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, std::string::String) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath, std::string::String) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_get_default_name` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:543:50
[INFO] [stdout]     |
[INFO] [stdout] 543 |     fn module_get_default_name(&self, module_id: &ModulePath) -> Result<String, SessionError> {
[INFO] [stdout]     |                                                  ^^^^^^^^^^^
[INFO] [stdout]     |                                                  |
[INFO] [stdout]     |                                                  expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                                                  help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:99:50
[INFO] [stdout]     |
[INFO] [stdout] 99  |     fn module_get_default_name(&self, module_id: UID) -> Result<String, SessionError>;
[INFO] [stdout]     |                                                  ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_get_uid` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:549:41
[INFO] [stdout]     |
[INFO] [stdout] 549 |     fn module_get_uid(&self, module_id: &ModulePath) -> Result<UID, SessionError> {
[INFO] [stdout]     |                                         ^^^^^^^^^^^
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                                         help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:101:41
[INFO] [stdout]     |
[INFO] [stdout] 101 |     fn module_get_uid(&self, module_id: UID) -> Result<UID, SessionError>;
[INFO] [stdout]     |                                         ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_get_version` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:555:45
[INFO] [stdout]     |
[INFO] [stdout] 555 |     fn module_get_version(&self, module_id: &ModulePath) -> Result<String, SessionError> {
[INFO] [stdout]     |                                             ^^^^^^^^^^^
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                                             help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:102:45
[INFO] [stdout]     |
[INFO] [stdout] 102 |     fn module_get_version(&self, module_id: UID) -> Result<String, SessionError>;
[INFO] [stdout]     |                                             ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_supported_versions` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:563:20
[INFO] [stdout]     |
[INFO] [stdout] 563 |         module_id: &ModulePath,
[INFO] [stdout]     |                    ^^^^^^^^^^^
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                    help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:103:52
[INFO] [stdout]     |
[INFO] [stdout] 103 |     fn module_supported_versions(&self, module_id: UID) -> Result<Range<u64>, SessionError>;
[INFO] [stdout]     |                                                    ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_get_desc` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:570:42
[INFO] [stdout]     |
[INFO] [stdout] 570 |     fn module_get_desc(&self, module_id: &ModulePath) -> Result<String, SessionError> {
[INFO] [stdout]     |                                          ^^^^^^^^^^^
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                                          help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:105:42
[INFO] [stdout]     |
[INFO] [stdout] 105 |     fn module_get_desc(&self, module_id: UID) -> Result<String, SessionError>;
[INFO] [stdout]     |                                          ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_set_desc` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:574:42
[INFO] [stdout]     |
[INFO] [stdout] 574 |     fn module_set_desc(&self, module_id: &ModulePath, desc: String) -> Result<(), SessionError> {
[INFO] [stdout]     |                                          ^^^^^^^^^^^
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                                          help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:106:42
[INFO] [stdout]     |
[INFO] [stdout] 106 |     fn module_set_desc(&self, module_id: UID, desc: String) -> Result<(), SessionError>;
[INFO] [stdout]     |                                          ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, std::string::String) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath, std::string::String) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_get_default_desc` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:579:50
[INFO] [stdout]     |
[INFO] [stdout] 579 |     fn module_get_default_desc(&self, module_id: &ModulePath) -> Result<String, SessionError> {
[INFO] [stdout]     |                                                  ^^^^^^^^^^^
[INFO] [stdout]     |                                                  |
[INFO] [stdout]     |                                                  expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                                                  help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:107:50
[INFO] [stdout]     |
[INFO] [stdout] 107 |     fn module_get_default_desc(&self, module_id: UID) -> Result<String, SessionError>;
[INFO] [stdout]     |                                                  ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_get_proxy` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:585:43
[INFO] [stdout]     |
[INFO] [stdout] 585 |     fn module_get_proxy(&self, module_id: &ModulePath) -> Result<usize, SessionError> {
[INFO] [stdout]     |                                           ^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                                           help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:109:43
[INFO] [stdout]     |
[INFO] [stdout] 109 |     fn module_get_proxy(&self, module_id: UID) -> Result<usize, SessionError>;
[INFO] [stdout]     |                                           ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_set_proxy` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:589:43
[INFO] [stdout]     |
[INFO] [stdout] 589 |     fn module_set_proxy(&self, module_id: &ModulePath, proxy: usize) -> Result<(), SessionError> {
[INFO] [stdout]     |                                           ^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                                           help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:110:43
[INFO] [stdout]     |
[INFO] [stdout] 110 |     fn module_set_proxy(&self, module_id: UID, proxy: usize) -> Result<(), SessionError>;
[INFO] [stdout]     |                                           ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, _) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath, _) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_get_settings` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:594:46
[INFO] [stdout]     |
[INFO] [stdout] 594 |     fn module_get_settings(&self, module_id: &ModulePath) -> Result<Values, SessionError> {
[INFO] [stdout]     |                                              ^^^^^^^^^^^
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                                              help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:112:46
[INFO] [stdout]     |
[INFO] [stdout] 112 |     fn module_get_settings(&self, module_id: UID) -> Result<Values, SessionError>;
[INFO] [stdout]     |                                              ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_set_settings` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:600:20
[INFO] [stdout]     |
[INFO] [stdout] 600 |         module_id: &ModulePath,
[INFO] [stdout]     |                    ^^^^^^^^^^^
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                    help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:113:46
[INFO] [stdout]     |
[INFO] [stdout] 113 |     fn module_set_settings(&self, module_id: UID, data: Values) -> Result<(), SessionError>;
[INFO] [stdout]     |                                              ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, data::Values) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath, data::Values) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_get_element_settings` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:607:54
[INFO] [stdout]     |
[INFO] [stdout] 607 |     fn module_get_element_settings(&self, module_id: &ModulePath) -> Result<Values, SessionError> {
[INFO] [stdout]     |                                                      ^^^^^^^^^^^
[INFO] [stdout]     |                                                      |
[INFO] [stdout]     |                                                      expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                                                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:115:54
[INFO] [stdout]     |
[INFO] [stdout] 115 |     fn module_get_element_settings(&self, module_id: UID) -> Result<Values, SessionError>;
[INFO] [stdout]     |                                                      ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_set_element_settings` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:613:20
[INFO] [stdout]     |
[INFO] [stdout] 613 |         module_id: &ModulePath,
[INFO] [stdout]     |                    ^^^^^^^^^^^
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                    help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:116:54
[INFO] [stdout]     |
[INFO] [stdout] 116 |     fn module_set_element_settings(&self, module_id: UID, data: Values)
[INFO] [stdout]     |                                                      ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, data::Values) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath, data::Values) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_get_location_settings` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:620:55
[INFO] [stdout]     |
[INFO] [stdout] 620 |     fn module_get_location_settings(&self, module_id: &ModulePath) -> Result<Values, SessionError> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                                                       help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:119:55
[INFO] [stdout]     |
[INFO] [stdout] 119 |     fn module_get_location_settings(&self, module_id: UID) -> Result<Values, SessionError>;
[INFO] [stdout]     |                                                       ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_set_location_settings` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:630:20
[INFO] [stdout]     |
[INFO] [stdout] 630 |         module_id: &ModulePath,
[INFO] [stdout]     |                    ^^^^^^^^^^^
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                    help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:122:20
[INFO] [stdout]     |
[INFO] [stdout] 122 |         module_id: UID,
[INFO] [stdout]     |                    ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, data::Values) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath, data::Values) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_init_location` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:639:20
[INFO] [stdout]     |
[INFO] [stdout] 639 |         module_id: &ModulePath,
[INFO] [stdout]     |                    ^^^^^^^^^^^
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                    help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:126:47
[INFO] [stdout]     |
[INFO] [stdout] 126 |     fn module_init_location(&self, module_id: UID, location_id: UID) -> Result<(), SessionError>;
[INFO] [stdout]     |                                               ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath, &location::LocationPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_init_element` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:652:20
[INFO] [stdout]     |
[INFO] [stdout] 652 |         module_id: &ModulePath,
[INFO] [stdout]     |                    ^^^^^^^^^^^
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                    help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:128:46
[INFO] [stdout]     |
[INFO] [stdout] 128 |     fn module_init_element(&self, module_id: UID, element_id: UID) -> Result<(), SessionError>;
[INFO] [stdout]     |                                              ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath, &element::ElementPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_accept_url` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:669:44
[INFO] [stdout]     |
[INFO] [stdout] 669 |     fn module_accept_url(&self, module_id: &ModulePath, url: String) -> Result<bool, SessionError> {
[INFO] [stdout]     |                                            ^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                                            help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:130:44
[INFO] [stdout]     |
[INFO] [stdout] 130 |     fn module_accept_url(&self, module_id: UID, url: String) -> Result<bool, SessionError>;
[INFO] [stdout]     |                                            ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, std::string::String) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath, std::string::String) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_accept_extension` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:675:20
[INFO] [stdout]     |
[INFO] [stdout] 675 |         module_id: &ModulePath,
[INFO] [stdout]     |                    ^^^^^^^^^^^
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                    help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:132:50
[INFO] [stdout]     |
[INFO] [stdout] 132 |     fn module_accept_extension(&self, module_id: UID, filename: &str)
[INFO] [stdout]     |                                                  ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, &str) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath, &str) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_accepted_protocols` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:687:20
[INFO] [stdout]     |
[INFO] [stdout] 687 |         module_id: &ModulePath,
[INFO] [stdout]     |                    ^^^^^^^^^^^
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                    help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:135:52
[INFO] [stdout]     |
[INFO] [stdout] 135 |     fn module_accepted_protocols(&self, module_id: UID) -> Result<Vec<String>, SessionError>;
[INFO] [stdout]     |                                                    ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_accepted_extensions` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:698:20
[INFO] [stdout]     |
[INFO] [stdout] 698 |         module_id: &ModulePath,
[INFO] [stdout]     |                    ^^^^^^^^^^^
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                    help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:136:53
[INFO] [stdout]     |
[INFO] [stdout] 136 |     fn module_accepted_extensions(&self, module_id: UID) -> Result<Vec<String>, SessionError>;
[INFO] [stdout]     |                                                     ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_step_element` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:709:20
[INFO] [stdout]     |
[INFO] [stdout] 709 |         module_id: &ModulePath,
[INFO] [stdout]     |                    ^^^^^^^^^^^
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                    help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:140:20
[INFO] [stdout]     |
[INFO] [stdout] 140 |         module_id: UID,
[INFO] [stdout]     |                    ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, u64, module::ControlFlow, storage::Storage) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath, &element::ElementPath, module::ControlFlow, storage::Storage) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `module_step_location` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:749:20
[INFO] [stdout]     |
[INFO] [stdout] 749 |         module_id: &ModulePath,
[INFO] [stdout]     |                    ^^^^^^^^^^^
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    expected `u64`, found `&module::ModulePath`
[INFO] [stdout]     |                    help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:148:20
[INFO] [stdout]     |
[INFO] [stdout] 148 |         module_id: UID,
[INFO] [stdout]     |                    ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, u64, module::ControlFlow, storage::Storage) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &module::ModulePath, &location::LocationPath, module::ControlFlow, storage::Storage) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `create_element` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:769:55
[INFO] [stdout]     |
[INFO] [stdout] 769 |     fn create_element(&self, name: &str, location_id: &LocationPath) -> Result<ERef, SessionError> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       expected `u64`, found `&location::LocationPath`
[INFO] [stdout]     |                                                       help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:162:55
[INFO] [stdout]     |
[INFO] [stdout] 162 |     fn create_element(&self, name: &str, location_id: UID) -> Result<ERef, SessionError>;
[INFO] [stdout]     |                                                       ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, &str, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &str, &location::LocationPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `move_element` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:920:21
[INFO] [stdout]     |
[INFO] [stdout] 920 |         element_id: &ElementPath,
[INFO] [stdout]     |                     ^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     expected `u64`, found `&element::ElementPath`
[INFO] [stdout]     |                     help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:164:37
[INFO] [stdout]     |
[INFO] [stdout] 164 |     fn move_element(&self, element: UID, location_id: UID) -> Result<(), SessionError>;
[INFO] [stdout]     |                                     ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath, &location::LocationPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `destroy_element` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:942:43
[INFO] [stdout]     |
[INFO] [stdout] 942 |     fn destroy_element(&self, element_id: ElementPath) -> Result<ERow, SessionError> {
[INFO] [stdout]     |                                           ^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           expected `u64`, found `element::ElementPath`
[INFO] [stdout]     |                                           help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:165:43
[INFO] [stdout]     |
[INFO] [stdout] 165 |     fn destroy_element(&self, element_id: UID) -> Result<ERow, SessionError>;
[INFO] [stdout]     |                                           ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, element::ElementPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_get_name` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:980:44
[INFO] [stdout]     |
[INFO] [stdout] 980 |     fn element_get_name(&self, element_id: &ElementPath) -> Result<String, SessionError> {
[INFO] [stdout]     |                                            ^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            expected `u64`, found `&element::ElementPath`
[INFO] [stdout]     |                                            help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:167:44
[INFO] [stdout]     |
[INFO] [stdout] 167 |     fn element_get_name(&self, element_id: UID) -> Result<String, SessionError>;
[INFO] [stdout]     |                                            ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_set_name` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:984:44
[INFO] [stdout]     |
[INFO] [stdout] 984 |     fn element_set_name(&self, element_id: &ElementPath, name: &str) -> Result<(), SessionError> {
[INFO] [stdout]     |                                            ^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            expected `u64`, found `&element::ElementPath`
[INFO] [stdout]     |                                            help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:168:44
[INFO] [stdout]     |
[INFO] [stdout] 168 |     fn element_set_name(&self, element_id: UID, name: &str) -> Result<(), SessionError>;
[INFO] [stdout]     |                                            ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, &str) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath, &str) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_get_desc` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:989:44
[INFO] [stdout]     |
[INFO] [stdout] 989 |     fn element_get_desc(&self, element_id: &ElementPath) -> Result<String, SessionError> {
[INFO] [stdout]     |                                            ^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            expected `u64`, found `&element::ElementPath`
[INFO] [stdout]     |                                            help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:170:44
[INFO] [stdout]     |
[INFO] [stdout] 170 |     fn element_get_desc(&self, element_id: UID) -> Result<String, SessionError>;
[INFO] [stdout]     |                                            ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_set_desc` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:993:44
[INFO] [stdout]     |
[INFO] [stdout] 993 |     fn element_set_desc(&self, element_id: &ElementPath, desc: &str) -> Result<(), SessionError> {
[INFO] [stdout]     |                                            ^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            expected `u64`, found `&element::ElementPath`
[INFO] [stdout]     |                                            help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:171:44
[INFO] [stdout]     |
[INFO] [stdout] 171 |     fn element_set_desc(&self, element_id: UID, desc: &str) -> Result<(), SessionError>;
[INFO] [stdout]     |                                            ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, &str) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath, &str) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_get_meta` has an incompatible type for trait
[INFO] [stdout]    --> src/local_session/session.rs:998:44
[INFO] [stdout]     |
[INFO] [stdout] 998 |     fn element_get_meta(&self, element_id: &ElementPath) -> Result<String, SessionError> {
[INFO] [stdout]     |                                            ^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            expected `u64`, found `&element::ElementPath`
[INFO] [stdout]     |                                            help: change the parameter type to match the trait: `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: type in trait
[INFO] [stdout]    --> src/session.rs:173:44
[INFO] [stdout]     |
[INFO] [stdout] 173 |     fn element_get_meta(&self, element_id: UID) -> Result<String, SessionError>;
[INFO] [stdout]     |                                            ^^^
[INFO] [stdout]     = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_set_meta` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1002:44
[INFO] [stdout]      |
[INFO] [stdout] 1002 |     fn element_set_meta(&self, element_id: &ElementPath, meta: &str) -> Result<(), SessionError> {
[INFO] [stdout]      |                                            ^^^^^^^^^^^^
[INFO] [stdout]      |                                            |
[INFO] [stdout]      |                                            expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                                            help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:174:44
[INFO] [stdout]      |
[INFO] [stdout] 174  |     fn element_set_meta(&self, element_id: UID, meta: &str) -> Result<(), SessionError>;
[INFO] [stdout]      |                                            ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, &str) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath, &str) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_get_url` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1007:43
[INFO] [stdout]      |
[INFO] [stdout] 1007 |     fn element_get_url(&self, element_id: &ElementPath) -> Result<Option<String>, SessionError> {
[INFO] [stdout]      |                                           ^^^^^^^^^^^^
[INFO] [stdout]      |                                           |
[INFO] [stdout]      |                                           expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                                           help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:176:43
[INFO] [stdout]      |
[INFO] [stdout] 176  |     fn element_get_url(&self, element_id: UID) -> Result<Option<String>, SessionError>;
[INFO] [stdout]      |                                           ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_set_url` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1013:21
[INFO] [stdout]      |
[INFO] [stdout] 1013 |         element_id: &ElementPath,
[INFO] [stdout]      |                     ^^^^^^^^^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                     help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:177:43
[INFO] [stdout]      |
[INFO] [stdout] 177  |     fn element_set_url(&self, element_id: UID, url: Option<String>) -> Result<(), SessionError>;
[INFO] [stdout]      |                                           ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, std::option::Option<_>) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath, std::option::Option<_>) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_get_element_data` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1020:52
[INFO] [stdout]      |
[INFO] [stdout] 1020 |     fn element_get_element_data(&self, element_id: &ElementPath) -> Result<Values, SessionError> {
[INFO] [stdout]      |                                                    ^^^^^^^^^^^^
[INFO] [stdout]      |                                                    |
[INFO] [stdout]      |                                                    expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                                                    help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:179:52
[INFO] [stdout]      |
[INFO] [stdout] 179  |     fn element_get_element_data(&self, element_id: UID) -> Result<Values, SessionError>;
[INFO] [stdout]      |                                                    ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_set_element_data` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1026:21
[INFO] [stdout]      |
[INFO] [stdout] 1026 |         element_id: &ElementPath,
[INFO] [stdout]      |                     ^^^^^^^^^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                     help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:180:52
[INFO] [stdout]      |
[INFO] [stdout] 180  |     fn element_set_element_data(&self, element_id: UID, data: Values) -> Result<(), SessionError>;
[INFO] [stdout]      |                                                    ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, data::Values) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath, data::Values) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_get_module_data` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1033:51
[INFO] [stdout]      |
[INFO] [stdout] 1033 |     fn element_get_module_data(&self, element_id: &ElementPath) -> Result<Values, SessionError> {
[INFO] [stdout]      |                                                   ^^^^^^^^^^^^
[INFO] [stdout]      |                                                   |
[INFO] [stdout]      |                                                   expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                                                   help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:182:51
[INFO] [stdout]      |
[INFO] [stdout] 182  |     fn element_get_module_data(&self, element_id: UID) -> Result<Values, SessionError>;
[INFO] [stdout]      |                                                   ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_set_module_data` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1039:21
[INFO] [stdout]      |
[INFO] [stdout] 1039 |         element_id: &ElementPath,
[INFO] [stdout]      |                     ^^^^^^^^^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                     help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:183:51
[INFO] [stdout]      |
[INFO] [stdout] 183  |     fn element_set_module_data(&self, element_id: UID, data: Values) -> Result<(), SessionError>;
[INFO] [stdout]      |                                                   ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, data::Values) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath, data::Values) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_get_module` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1046:46
[INFO] [stdout]      |
[INFO] [stdout] 1046 |     fn element_get_module(&self, element_id: &ElementPath) -> Result<Option<MRef>, SessionError> {
[INFO] [stdout]      |                                              ^^^^^^^^^^^^
[INFO] [stdout]      |                                              |
[INFO] [stdout]      |                                              expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                                              help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:185:46
[INFO] [stdout]      |
[INFO] [stdout] 185  |     fn element_get_module(&self, element_id: UID) -> Result<Option<ModuleId>, SessionError>;
[INFO] [stdout]      |                                              ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<std::option::Option<module::ModuleId>, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath) -> Result<std::option::Option<Arc<RwLock<module::RefModulePath>>>, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_set_module` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1056:21
[INFO] [stdout]      |
[INFO] [stdout] 1056 |         element_id: &ElementPath,
[INFO] [stdout]      |                     ^^^^^^^^^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                     help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:186:43
[INFO] [stdout]      |
[INFO] [stdout] 186  |     fn element_set_module(&self, element: UID, module: Option<UID>) -> Result<(), SessionError>;
[INFO] [stdout]      |                                           ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, std::option::Option<u64>) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath, std::option::Option<module::ModulePath>) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_get_statuses` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1066:48
[INFO] [stdout]      |
[INFO] [stdout] 1066 |     fn element_get_statuses(&self, element_id: &ElementPath) -> Result<Vec<String>, SessionError> {
[INFO] [stdout]      |                                                ^^^^^^^^^^^^
[INFO] [stdout]      |                                                |
[INFO] [stdout]      |                                                expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                                                help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:188:48
[INFO] [stdout]      |
[INFO] [stdout] 188  |     fn element_get_statuses(&self, element_id: UID) -> Result<Vec<String>, SessionError>;
[INFO] [stdout]      |                                                ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_set_statuses` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1072:21
[INFO] [stdout]      |
[INFO] [stdout] 1072 |         element_id: &ElementPath,
[INFO] [stdout]      |                     ^^^^^^^^^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                     help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:189:45
[INFO] [stdout]      |
[INFO] [stdout] 189  |     fn element_set_statuses(&self, element: UID, statuses: Vec<String>)
[INFO] [stdout]      |                                             ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, std::vec::Vec<_>) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath, std::vec::Vec<_>) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_get_status` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1079:46
[INFO] [stdout]      |
[INFO] [stdout] 1079 |     fn element_get_status(&self, element_id: &ElementPath) -> Result<usize, SessionError> {
[INFO] [stdout]      |                                              ^^^^^^^^^^^^
[INFO] [stdout]      |                                              |
[INFO] [stdout]      |                                              expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                                              help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:192:46
[INFO] [stdout]      |
[INFO] [stdout] 192  |     fn element_get_status(&self, element_id: UID) -> Result<usize, SessionError>;
[INFO] [stdout]      |                                              ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_set_status` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1085:21
[INFO] [stdout]      |
[INFO] [stdout] 1085 |         element_id: &ElementPath,
[INFO] [stdout]      |                     ^^^^^^^^^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                     help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:193:46
[INFO] [stdout]      |
[INFO] [stdout] 193  |     fn element_set_status(&self, element_id: UID, status: usize) -> Result<(), SessionError>;
[INFO] [stdout]      |                                              ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, _) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath, _) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_get_data` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1097:44
[INFO] [stdout]      |
[INFO] [stdout] 1097 |     fn element_get_data(&self, element_id: &ElementPath) -> Result<Data, SessionError> {
[INFO] [stdout]      |                                            ^^^^^^^^^^^^
[INFO] [stdout]      |                                            |
[INFO] [stdout]      |                                            expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                                            help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:195:44
[INFO] [stdout]      |
[INFO] [stdout] 195  |     fn element_get_data(&self, element_id: UID) -> Result<Data, SessionError>;
[INFO] [stdout]      |                                            ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_set_data` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1101:44
[INFO] [stdout]      |
[INFO] [stdout] 1101 |     fn element_set_data(&self, element_id: &ElementPath, data: Data) -> Result<(), SessionError> {
[INFO] [stdout]      |                                            ^^^^^^^^^^^^
[INFO] [stdout]      |                                            |
[INFO] [stdout]      |                                            expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                                            help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:196:44
[INFO] [stdout]      |
[INFO] [stdout] 196  |     fn element_set_data(&self, element_id: UID, data: Data) -> Result<(), SessionError>;
[INFO] [stdout]      |                                            ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, data::Data) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath, data::Data) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_get_progress` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1106:48
[INFO] [stdout]      |
[INFO] [stdout] 1106 |     fn element_get_progress(&self, element_id: &ElementPath) -> Result<f32, SessionError> {
[INFO] [stdout]      |                                                ^^^^^^^^^^^^
[INFO] [stdout]      |                                                |
[INFO] [stdout]      |                                                expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                                                help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:198:48
[INFO] [stdout]      |
[INFO] [stdout] 198  |     fn element_get_progress(&self, element_id: UID) -> Result<f32, SessionError>;
[INFO] [stdout]      |                                                ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_set_progress` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1112:21
[INFO] [stdout]      |
[INFO] [stdout] 1112 |         element_id: &ElementPath,
[INFO] [stdout]      |                     ^^^^^^^^^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                     help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:199:48
[INFO] [stdout]      |
[INFO] [stdout] 199  |     fn element_set_progress(&self, element_id: UID, progress: f32) -> Result<(), SessionError>;
[INFO] [stdout]      |                                                ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, _) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath, _) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_get_should_save` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1119:51
[INFO] [stdout]      |
[INFO] [stdout] 1119 |     fn element_get_should_save(&self, element_id: &ElementPath) -> Result<bool, SessionError> {
[INFO] [stdout]      |                                                   ^^^^^^^^^^^^
[INFO] [stdout]      |                                                   |
[INFO] [stdout]      |                                                   expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                                                   help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:201:51
[INFO] [stdout]      |
[INFO] [stdout] 201  |     fn element_get_should_save(&self, element_id: UID) -> Result<bool, SessionError>;
[INFO] [stdout]      |                                                   ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_set_should_save` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1125:21
[INFO] [stdout]      |
[INFO] [stdout] 1125 |         element_id: &ElementPath,
[INFO] [stdout]      |                     ^^^^^^^^^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                     help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:202:48
[INFO] [stdout]      |
[INFO] [stdout] 202  |     fn element_set_should_save(&self, element: UID, should_save: bool) -> Result<(), SessionError>;
[INFO] [stdout]      |                                                ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, _) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath, _) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_get_enabled` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1132:47
[INFO] [stdout]      |
[INFO] [stdout] 1132 |     fn element_get_enabled(&self, element_id: &ElementPath) -> Result<bool, SessionError> {
[INFO] [stdout]      |                                               ^^^^^^^^^^^^
[INFO] [stdout]      |                                               |
[INFO] [stdout]      |                                               expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                                               help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:204:47
[INFO] [stdout]      |
[INFO] [stdout] 204  |     fn element_get_enabled(&self, element_id: UID) -> Result<bool, SessionError>;
[INFO] [stdout]      |                                               ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_set_enabled` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1138:21
[INFO] [stdout]      |
[INFO] [stdout] 1138 |         element_id: &ElementPath,
[INFO] [stdout]      |                     ^^^^^^^^^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                     help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:207:21
[INFO] [stdout]      |
[INFO] [stdout] 207  |         element_id: UID,
[INFO] [stdout]      |                     ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, _, std::option::Option<_>) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath, _, std::option::Option<_>) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_is_error` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1214:44
[INFO] [stdout]      |
[INFO] [stdout] 1214 |     fn element_is_error(&self, element_id: &ElementPath) -> Result<bool, SessionError> {
[INFO] [stdout]      |                                            ^^^^^^^^^^^^
[INFO] [stdout]      |                                            |
[INFO] [stdout]      |                                            expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                                            help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:212:44
[INFO] [stdout]      |
[INFO] [stdout] 212  |     fn element_is_error(&self, element_id: UID) -> Result<bool, SessionError>;
[INFO] [stdout]      |                                            ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_resolv_module` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1218:49
[INFO] [stdout]      |
[INFO] [stdout] 1218 |     fn element_resolv_module(&self, element_id: &ElementPath) -> Result<bool, SessionError> {
[INFO] [stdout]      |                                                 ^^^^^^^^^^^^
[INFO] [stdout]      |                                                 |
[INFO] [stdout]      |                                                 expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                                                 help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:214:49
[INFO] [stdout]      |
[INFO] [stdout] 214  |     fn element_resolv_module(&self, element_id: UID) -> Result<bool, SessionError>;
[INFO] [stdout]      |                                                 ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_wait` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1245:40
[INFO] [stdout]      |
[INFO] [stdout] 1245 |     fn element_wait(&self, element_id: &ElementPath) -> Result<(), SessionError> {
[INFO] [stdout]      |                                        ^^^^^^^^^^^^
[INFO] [stdout]      |                                        |
[INFO] [stdout]      |                                        expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                                        help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:217:40
[INFO] [stdout]      |
[INFO] [stdout] 217  |     fn element_wait(&self, element_id: UID) -> Result<(), SessionError>;
[INFO] [stdout]      |                                        ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `element_get_element_info` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1255:21
[INFO] [stdout]      |
[INFO] [stdout] 1255 |         element_id: &ElementPath,
[INFO] [stdout]      |                     ^^^^^^^^^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     expected `u64`, found `&element::ElementPath`
[INFO] [stdout]      |                     help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:219:52
[INFO] [stdout]      |
[INFO] [stdout] 219  |     fn element_get_element_info(&self, element_id: UID) -> Result<ElementInfo, SessionError>;
[INFO] [stdout]      |                                                    ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &element::ElementPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `create_location` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1388:22
[INFO] [stdout]      |
[INFO] [stdout] 1388 |         location_id: &LocationPath,
[INFO] [stdout]      |                      ^^^^^^^^^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:229:56
[INFO] [stdout]      |
[INFO] [stdout] 229  |     fn create_location(&self, name: &str, location_id: UID) -> Result<LRef, SessionError>;
[INFO] [stdout]      |                                                        ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, &str, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &str, &location::LocationPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `get_locations_len` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1675:46
[INFO] [stdout]      |
[INFO] [stdout] 1675 |     fn get_locations_len(&self, location_id: &LocationPath) -> Result<usize, SessionError> {
[INFO] [stdout]      |                                              ^^^^^^^^^^^^^
[INFO] [stdout]      |                                              |
[INFO] [stdout]      |                                              expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                                              help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:231:46
[INFO] [stdout]      |
[INFO] [stdout] 231  |     fn get_locations_len(&self, location_id: UID) -> Result<usize, SessionError>;
[INFO] [stdout]      |                                              ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `get_locations` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1681:22
[INFO] [stdout]      |
[INFO] [stdout] 1681 |         location_id: &LocationPath,
[INFO] [stdout]      |                      ^^^^^^^^^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:234:22
[INFO] [stdout]      |
[INFO] [stdout] 234  |         location_id: UID,
[INFO] [stdout]      |                      ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, std::ops::Range<_>) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath, std::ops::Range<_>) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `destroy_location` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1692:45
[INFO] [stdout]      |
[INFO] [stdout] 1692 |     fn destroy_location(&self, location_id: LocationPath) -> Result<LRow, SessionError> {
[INFO] [stdout]      |                                             ^^^^^^^^^^^^
[INFO] [stdout]      |                                             |
[INFO] [stdout]      |                                             expected `u64`, found `location::LocationPath`
[INFO] [stdout]      |                                             help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:237:45
[INFO] [stdout]      |
[INFO] [stdout] 237  |     fn destroy_location(&self, location_id: UID) -> Result<LRow, SessionError>;
[INFO] [stdout]      |                                             ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, location::LocationPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_get_name` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1753:46
[INFO] [stdout]      |
[INFO] [stdout] 1753 |     fn location_get_name(&self, location_id: &LocationPath) -> Result<String, SessionError> {
[INFO] [stdout]      |                                              ^^^^^^^^^^^^^
[INFO] [stdout]      |                                              |
[INFO] [stdout]      |                                              expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                                              help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:241:46
[INFO] [stdout]      |
[INFO] [stdout] 241  |     fn location_get_name(&self, location_id: UID) -> Result<String, SessionError>;
[INFO] [stdout]      |                                              ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_set_name` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1759:22
[INFO] [stdout]      |
[INFO] [stdout] 1759 |         location_id: &LocationPath,
[INFO] [stdout]      |                      ^^^^^^^^^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:242:46
[INFO] [stdout]      |
[INFO] [stdout] 242  |     fn location_set_name(&self, location_id: UID, name: &str) -> Result<(), SessionError>;
[INFO] [stdout]      |                                              ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, &str) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath, &str) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_get_desc` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1766:46
[INFO] [stdout]      |
[INFO] [stdout] 1766 |     fn location_get_desc(&self, location_id: &LocationPath) -> Result<String, SessionError> {
[INFO] [stdout]      |                                              ^^^^^^^^^^^^^
[INFO] [stdout]      |                                              |
[INFO] [stdout]      |                                              expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                                              help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:244:46
[INFO] [stdout]      |
[INFO] [stdout] 244  |     fn location_get_desc(&self, location_id: UID) -> Result<String, SessionError>;
[INFO] [stdout]      |                                              ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_set_desc` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1772:22
[INFO] [stdout]      |
[INFO] [stdout] 1772 |         location_id: &LocationPath,
[INFO] [stdout]      |                      ^^^^^^^^^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:245:46
[INFO] [stdout]      |
[INFO] [stdout] 245  |     fn location_set_desc(&self, location_id: UID, desc: &str) -> Result<(), SessionError>;
[INFO] [stdout]      |                                              ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, &str) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath, &str) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_get_path` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1779:46
[INFO] [stdout]      |
[INFO] [stdout] 1779 |     fn location_get_path(&self, location_id: &LocationPath) -> Result<PathBuf, SessionError> {
[INFO] [stdout]      |                                              ^^^^^^^^^^^^^
[INFO] [stdout]      |                                              |
[INFO] [stdout]      |                                              expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                                              help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:247:46
[INFO] [stdout]      |
[INFO] [stdout] 247  |     fn location_get_path(&self, location_id: UID) -> Result<PathBuf, SessionError>;
[INFO] [stdout]      |                                              ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_set_path` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1785:22
[INFO] [stdout]      |
[INFO] [stdout] 1785 |         location_id: &LocationPath,
[INFO] [stdout]      |                      ^^^^^^^^^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:248:46
[INFO] [stdout]      |
[INFO] [stdout] 248  |     fn location_set_path(&self, location_id: UID, path: PathBuf) -> Result<(), SessionError>;
[INFO] [stdout]      |                                              ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, PathBuf) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath, PathBuf) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_get_where_is` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1794:22
[INFO] [stdout]      |
[INFO] [stdout] 1794 |         location_id: &LocationPath,
[INFO] [stdout]      |                      ^^^^^^^^^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:250:50
[INFO] [stdout]      |
[INFO] [stdout] 250  |     fn location_get_where_is(&self, location_id: UID) -> Result<WhereIsLocation, SessionError>;
[INFO] [stdout]      |                                                  ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_set_where_is` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1801:22
[INFO] [stdout]      |
[INFO] [stdout] 1801 |         location_id: &LocationPath,
[INFO] [stdout]      |                      ^^^^^^^^^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:253:22
[INFO] [stdout]      |
[INFO] [stdout] 253  |         location_id: UID,
[INFO] [stdout]      |                      ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, location::WhereIsLocation) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath, location::WhereIsLocation) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_get_should_save` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1808:53
[INFO] [stdout]      |
[INFO] [stdout] 1808 |     fn location_get_should_save(&self, location_id: &LocationPath) -> Result<bool, SessionError> {
[INFO] [stdout]      |                                                     ^^^^^^^^^^^^^
[INFO] [stdout]      |                                                     |
[INFO] [stdout]      |                                                     expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                                                     help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:257:53
[INFO] [stdout]      |
[INFO] [stdout] 257  |     fn location_get_should_save(&self, location_id: UID) -> Result<bool, SessionError>;
[INFO] [stdout]      |                                                     ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_set_should_save` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1814:22
[INFO] [stdout]      |
[INFO] [stdout] 1814 |         location_id: &LocationPath,
[INFO] [stdout]      |                      ^^^^^^^^^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:260:22
[INFO] [stdout]      |
[INFO] [stdout] 260  |         location_id: UID,
[INFO] [stdout]      |                      ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, _) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath, _) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_get_elements_len` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1821:54
[INFO] [stdout]      |
[INFO] [stdout] 1821 |     fn location_get_elements_len(&self, location_id: &LocationPath) -> Result<usize, SessionError> {
[INFO] [stdout]      |                                                      ^^^^^^^^^^^^^
[INFO] [stdout]      |                                                      |
[INFO] [stdout]      |                                                      expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                                                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:264:54
[INFO] [stdout]      |
[INFO] [stdout] 264  |     fn location_get_elements_len(&self, location_id: UID) -> Result<usize, SessionError>;
[INFO] [stdout]      |                                                      ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_get_elements` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1827:22
[INFO] [stdout]      |
[INFO] [stdout] 1827 |         location_id: &LocationPath,
[INFO] [stdout]      |                      ^^^^^^^^^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:267:22
[INFO] [stdout]      |
[INFO] [stdout] 267  |         location_id: UID,
[INFO] [stdout]      |                      ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, std::ops::Range<_>) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath, std::ops::Range<_>) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_get_module` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1842:22
[INFO] [stdout]      |
[INFO] [stdout] 1842 |         location_id: &LocationPath,
[INFO] [stdout]      |                      ^^^^^^^^^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:271:48
[INFO] [stdout]      |
[INFO] [stdout] 271  |     fn location_get_module(&self, location_id: UID) -> Result<Option<ModuleId>, SessionError>;
[INFO] [stdout]      |                                                ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<std::option::Option<module::ModuleId>, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath) -> Result<std::option::Option<Arc<RwLock<module::RefModulePath>>>, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_set_module` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1849:22
[INFO] [stdout]      |
[INFO] [stdout] 1849 |         location_id: &LocationPath,
[INFO] [stdout]      |                      ^^^^^^^^^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:274:22
[INFO] [stdout]      |
[INFO] [stdout] 274  |         location_id: UID,
[INFO] [stdout]      |                      ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, std::option::Option<u64>) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath, std::option::Option<module::ModulePath>) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_get_settings` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1861:50
[INFO] [stdout]      |
[INFO] [stdout] 1861 |     fn location_get_settings(&self, location_id: &LocationPath) -> Result<Values, SessionError> {
[INFO] [stdout]      |                                                  ^^^^^^^^^^^^^
[INFO] [stdout]      |                                                  |
[INFO] [stdout]      |                                                  expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                                                  help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:278:50
[INFO] [stdout]      |
[INFO] [stdout] 278  |     fn location_get_settings(&self, location_id: UID) -> Result<Values, SessionError>;
[INFO] [stdout]      |                                                  ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_set_settings` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1867:22
[INFO] [stdout]      |
[INFO] [stdout] 1867 |         location_id: &LocationPath,
[INFO] [stdout]      |                      ^^^^^^^^^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:279:50
[INFO] [stdout]      |
[INFO] [stdout] 279  |     fn location_set_settings(&self, location_id: UID, data: Values) -> Result<(), SessionError>;
[INFO] [stdout]      |                                                  ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, data::Values) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath, data::Values) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_get_module_settings` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1876:22
[INFO] [stdout]      |
[INFO] [stdout] 1876 |         location_id: &LocationPath,
[INFO] [stdout]      |                      ^^^^^^^^^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:281:57
[INFO] [stdout]      |
[INFO] [stdout] 281  |     fn location_get_module_settings(&self, location_id: UID) -> Result<Values, SessionError>;
[INFO] [stdout]      |                                                         ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_set_module_settings` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1891:22
[INFO] [stdout]      |
[INFO] [stdout] 1891 |         location_id: &LocationPath,
[INFO] [stdout]      |                      ^^^^^^^^^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:284:22
[INFO] [stdout]      |
[INFO] [stdout] 284  |         location_id: UID,
[INFO] [stdout]      |                      ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, data::Values) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath, data::Values) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_get_statuses` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1900:22
[INFO] [stdout]      |
[INFO] [stdout] 1900 |         location_id: &LocationPath,
[INFO] [stdout]      |                      ^^^^^^^^^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:288:50
[INFO] [stdout]      |
[INFO] [stdout] 288  |     fn location_get_statuses(&self, location_id: UID) -> Result<Vec<String>, SessionError>;
[INFO] [stdout]      |                                                  ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_set_statuses` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1907:22
[INFO] [stdout]      |
[INFO] [stdout] 1907 |         location_id: &LocationPath,
[INFO] [stdout]      |                      ^^^^^^^^^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:291:22
[INFO] [stdout]      |
[INFO] [stdout] 291  |         location_id: UID,
[INFO] [stdout]      |                      ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, std::vec::Vec<_>) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath, std::vec::Vec<_>) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_get_status` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1914:48
[INFO] [stdout]      |
[INFO] [stdout] 1914 |     fn location_get_status(&self, location_id: &LocationPath) -> Result<usize, SessionError> {
[INFO] [stdout]      |                                                ^^^^^^^^^^^^^
[INFO] [stdout]      |                                                |
[INFO] [stdout]      |                                                expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                                                help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:295:48
[INFO] [stdout]      |
[INFO] [stdout] 295  |     fn location_get_status(&self, location_id: UID) -> Result<usize, SessionError>;
[INFO] [stdout]      |                                                ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_set_status` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1920:22
[INFO] [stdout]      |
[INFO] [stdout] 1920 |         location_id: &LocationPath,
[INFO] [stdout]      |                      ^^^^^^^^^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:296:48
[INFO] [stdout]      |
[INFO] [stdout] 296  |     fn location_set_status(&self, location_id: UID, status: usize) -> Result<(), SessionError>;
[INFO] [stdout]      |                                                ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, _) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath, _) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_get_progress` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1927:50
[INFO] [stdout]      |
[INFO] [stdout] 1927 |     fn location_get_progress(&self, location_id: &LocationPath) -> Result<f32, SessionError> {
[INFO] [stdout]      |                                                  ^^^^^^^^^^^^^
[INFO] [stdout]      |                                                  |
[INFO] [stdout]      |                                                  expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                                                  help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:298:50
[INFO] [stdout]      |
[INFO] [stdout] 298  |     fn location_get_progress(&self, location_id: UID) -> Result<f32, SessionError>;
[INFO] [stdout]      |                                                  ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_set_progress` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1933:22
[INFO] [stdout]      |
[INFO] [stdout] 1933 |         location_id: &LocationPath,
[INFO] [stdout]      |                      ^^^^^^^^^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:299:50
[INFO] [stdout]      |
[INFO] [stdout] 299  |     fn location_set_progress(&self, location_id: UID, progress: f32) -> Result<(), SessionError>;
[INFO] [stdout]      |                                                  ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, _) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath, _) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_is_enabled` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1940:48
[INFO] [stdout]      |
[INFO] [stdout] 1940 |     fn location_is_enabled(&self, location_id: &LocationPath) -> Result<bool, SessionError> {
[INFO] [stdout]      |                                                ^^^^^^^^^^^^^
[INFO] [stdout]      |                                                |
[INFO] [stdout]      |                                                expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                                                help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:301:48
[INFO] [stdout]      |
[INFO] [stdout] 301  |     fn location_is_enabled(&self, location_id: UID) -> Result<bool, SessionError>;
[INFO] [stdout]      |                                                ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_set_enabled` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1946:22
[INFO] [stdout]      |
[INFO] [stdout] 1946 |         location_id: &LocationPath,
[INFO] [stdout]      |                      ^^^^^^^^^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:304:22
[INFO] [stdout]      |
[INFO] [stdout] 304  |         location_id: UID,
[INFO] [stdout]      |                      ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64, _, std::option::Option<_>) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath, _, std::option::Option<_>) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_is_error` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1953:46
[INFO] [stdout]      |
[INFO] [stdout] 1953 |     fn location_is_error(&self, location_id: &LocationPath) -> Result<bool, SessionError> {
[INFO] [stdout]      |                                              ^^^^^^^^^^^^^
[INFO] [stdout]      |                                              |
[INFO] [stdout]      |                                              expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                                              help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:309:46
[INFO] [stdout]      |
[INFO] [stdout] 309  |     fn location_is_error(&self, location_id: UID) -> Result<bool, SessionError>;
[INFO] [stdout]      |                                              ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `location_get_location_info` has an incompatible type for trait
[INFO] [stdout]     --> src/local_session/session.rs:1959:22
[INFO] [stdout]      |
[INFO] [stdout] 1959 |         location_id: &LocationPath,
[INFO] [stdout]      |                      ^^^^^^^^^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      expected `u64`, found `&location::LocationPath`
[INFO] [stdout]      |                      help: change the parameter type to match the trait: `u64`
[INFO] [stdout]      |
[INFO] [stdout] note: type in trait
[INFO] [stdout]     --> src/session.rs:311:55
[INFO] [stdout]      |
[INFO] [stdout] 311  |     fn location_get_location_info(&self, location_id: UID) -> Result<LocationInfo, SessionError>;
[INFO] [stdout]      |                                                       ^^^
[INFO] [stdout]      = note: expected signature `fn(&Arc<RwLock<LocalSession>>, u64) -> Result<_, _>`
[INFO] [stdout]                 found signature `fn(&Arc<RwLock<LocalSession>>, &location::LocationPath) -> Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0046]: not all trait items implemented, missing: `notify`, `emit`, `subscribe`, `unsubscribe`, `get_ref`, `get_module_from_path`, `get_element_from_path`, `get_location_from_path`
[INFO] [stdout]    --> src/local_session/session.rs:338:1
[INFO] [stdout]     |
[INFO] [stdout] 338 | impl TSession for Arc<RwLock<LocalSession>> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing `notify`, `emit`, `subscribe`, `unsubscribe`, `get_ref`, `get_module_from_path`, `get_element_from_path`, `get_location_from_path` in implementation
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/session.rs:313:5
[INFO] [stdout]     |
[INFO] [stdout] 313 |     fn notify(&self, uid: UID, event: Event) -> Result<(), SessionError>;
[INFO] [stdout]     |     --------------------------------------------------------------------- `notify` from trait
[INFO] [stdout] 314 |     fn emit(&self, who_emited: UID, event: Event) -> Result<(), SessionError>;
[INFO] [stdout]     |     -------------------------------------------------------------------------- `emit` from trait
[INFO] [stdout] 315 |     fn subscribe(&self, uid: UID, to: UID) -> Result<(), SessionError>;
[INFO] [stdout]     |     ------------------------------------------------------------------- `subscribe` from trait
[INFO] [stdout] 316 |     fn unsubscribe(&self, uid: UID, to: UID) -> Result<(), SessionError>;
[INFO] [stdout]     |     --------------------------------------------------------------------- `unsubscribe` from trait
[INFO] [stdout] ...
[INFO] [stdout] 327 |     fn get_ref(&self, uid: UID) -> Result<Ref, SessionError>;
[INFO] [stdout]     |     --------------------------------------------------------- `get_ref` from trait
[INFO] [stdout] 328 |
[INFO] [stdout] 329 |     fn get_module_from_path(&self, path: ModulePath) -> Result<ModuleId, SessionError>;
[INFO] [stdout]     |     ----------------------------------------------------------------------------------- `get_module_from_path` from trait
[INFO] [stdout] 330 |     fn get_element_from_path(&self, path: ElementPath) -> Result<ElementId, SessionError>;
[INFO] [stdout]     |     -------------------------------------------------------------------------------------- `get_element_from_path` from trait
[INFO] [stdout] 331 |     fn get_location_from_path(&self, path: LocationPath) -> Result<LocationId, SessionError>;
[INFO] [stdout]     |     ----------------------------------------------------------------------------------------- `get_location_from_path` from trait
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `element_notify` found for struct `Box<dyn session::TSession>` in the current scope
[INFO] [stdout]    --> src/element.rs:373:29
[INFO] [stdout]     |
[INFO] [stdout] 373 |         self.get_session()?.element_notify(self.uid, event)
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^ help: there is a method with a similar name: `element_wait`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `element_emit` found for struct `Box<dyn session::TSession>` in the current scope
[INFO] [stdout]    --> src/element.rs:377:29
[INFO] [stdout]     |
[INFO] [stdout] 377 |         self.get_session()?.element_emit(self.uid, event)
[INFO] [stdout]     |                             ^^^^^^^^^^^^ help: there is a method with a similar name: `element_wait`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `element_notify` found for struct `Box<dyn session::TSession>` in the current scope
[INFO] [stdout]    --> src/element.rs:373:29
[INFO] [stdout]     |
[INFO] [stdout] 373 |         self.get_session()?.element_notify(self.uid, event)
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^ help: there is a method with a similar name: `element_wait`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `element_subscribe` found for struct `Box<dyn session::TSession>` in the current scope
[INFO] [stdout]    --> src/element.rs:381:29
[INFO] [stdout]     |
[INFO] [stdout] 381 |         self.get_session()?.element_subscribe(self.uid, _ref)
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^ help: there is a method with a similar name: `subscribe`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `element_emit` found for struct `Box<dyn session::TSession>` in the current scope
[INFO] [stdout]    --> src/element.rs:377:29
[INFO] [stdout]     |
[INFO] [stdout] 377 |         self.get_session()?.element_emit(self.uid, event)
[INFO] [stdout]     |                             ^^^^^^^^^^^^ help: there is a method with a similar name: `element_wait`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `element_unsubscribe` found for struct `Box<dyn session::TSession>` in the current scope
[INFO] [stdout]    --> src/element.rs:385:29
[INFO] [stdout]     |
[INFO] [stdout] 385 |         self.get_session()?.element_unsubscribe(self.uid, _ref)
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^ help: there is a method with a similar name: `unsubscribe`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `element_subscribe` found for struct `Box<dyn session::TSession>` in the current scope
[INFO] [stdout]    --> src/element.rs:381:29
[INFO] [stdout]     |
[INFO] [stdout] 381 |         self.get_session()?.element_subscribe(self.uid, _ref)
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^ help: there is a method with a similar name: `subscribe`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `element_unsubscribe` found for struct `Box<dyn session::TSession>` in the current scope
[INFO] [stdout]    --> src/element.rs:385:29
[INFO] [stdout]     |
[INFO] [stdout] 385 |         self.get_session()?.element_unsubscribe(self.uid, _ref)
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^ help: there is a method with a similar name: `unsubscribe`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/local_session/session.rs:45:21
[INFO] [stdout]    |
[INFO] [stdout] 45 |             ref_id: location_info,
[INFO] [stdout]    |                     ^^^^^^^^^^^^^ expected `Arc<RwLock<Path>>`, found `Arc<RwLock<RefLocationPath>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected struct `Arc<RwLock<types::Path>>`
[INFO] [stdout]               found struct `Arc<RwLock<location::RefLocationPath>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `0` on type `&location::LocationId`
[INFO] [stdout]   --> src/local_session/session.rs:85:34
[INFO] [stdout]    |
[INFO] [stdout] 85 |             for i in location_id.0.clone() {
[INFO] [stdout]    |                                  ^ unknown field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `uid`, `session`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/local_session/session.rs:45:21
[INFO] [stdout]    |
[INFO] [stdout] 45 |             ref_id: location_info,
[INFO] [stdout]    |                     ^^^^^^^^^^^^^ expected `Arc<RwLock<Path>>`, found `Arc<RwLock<RefLocationPath>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected struct `Arc<RwLock<types::Path>>`
[INFO] [stdout]               found struct `Arc<RwLock<location::RefLocationPath>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `location_id` on type `&element::ElementId`
[INFO] [stdout]    --> src/local_session/session.rs:102:39
[INFO] [stdout]     |
[INFO] [stdout] 102 |             .get_location(&element_id.location_id)?
[INFO] [stdout]     |                                       ^^^^^^^^^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `uid`, `session`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `0` on type `&location::LocationId`
[INFO] [stdout]   --> src/local_session/session.rs:85:34
[INFO] [stdout]    |
[INFO] [stdout] 85 |             for i in location_id.0.clone() {
[INFO] [stdout]    |                                  ^ unknown field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `uid`, `session`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `index` on type `&element::ElementId`
[INFO] [stdout]    --> src/local_session/session.rs:105:29
[INFO] [stdout]     |
[INFO] [stdout] 105 |             .get(element_id.index as usize)
[INFO] [stdout]     |                             ^^^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `uid`, `session`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `location_id` on type `&element::ElementId`
[INFO] [stdout]    --> src/local_session/session.rs:102:39
[INFO] [stdout]     |
[INFO] [stdout] 102 |             .get_location(&element_id.location_id)?
[INFO] [stdout]     |                                       ^^^^^^^^^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `uid`, `session`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `index` on type `&element::ElementId`
[INFO] [stdout]    --> src/local_session/session.rs:105:29
[INFO] [stdout]     |
[INFO] [stdout] 105 |             .get(element_id.index as usize)
[INFO] [stdout]     |                             ^^^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `uid`, `session`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `0` on type `&module::ModuleId`
[INFO] [stdout]    --> src/local_session/session.rs:114:72
[INFO] [stdout]     |
[INFO] [stdout] 114 |         if let Some(Some(module)) = self.read()?.modules.get(module_id.0 as usize) {
[INFO] [stdout]     |                                                                        ^ unknown field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `uid`, `session`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `0` on type `&module::ModuleId`
[INFO] [stdout]    --> src/local_session/session.rs:114:72
[INFO] [stdout]     |
[INFO] [stdout] 114 |         if let Some(Some(module)) = self.read()?.modules.get(module_id.0 as usize) {
[INFO] [stdout]     |                                                                        ^ unknown field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `uid`, `session`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: arguments to this enum variant are incorrect
[INFO] [stdout]    --> src/local_session/session.rs:186:48
[INFO] [stdout]     |
[INFO] [stdout] 186 | ...                   notifications.push(SessionEvent::ModuleIdChanged(
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 187 | ...                       ModulePath(last_id),
[INFO] [stdout]     |                           ------------------- expected `ModuleId`, found `ModulePath`
[INFO] [stdout] 188 | ...                       ModulePath(new_id),
[INFO] [stdout]     |                           ------------------ expected `ModuleId`, found `ModulePath`
[INFO] [stdout]     |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> src/events.rs:27:5
[INFO] [stdout]     |
[INFO] [stdout] 27  |     ModuleIdChanged(ModuleId, ModuleId),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:211:72
[INFO] [stdout]     |
[INFO] [stdout] 211 | ...                   notifications.push(SessionEvent::NewModule(info.id));
[INFO] [stdout]     |                                          ----------------------- ^^^^^^^ expected `ModuleId`, found `ModulePath`
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          arguments to this enum variant are incorrect
[INFO] [stdout]     |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> src/events.rs:18:5
[INFO] [stdout]     |
[INFO] [stdout] 18  |     NewModule(ModuleId),
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: arguments to this enum variant are incorrect
[INFO] [stdout]    --> src/local_session/session.rs:186:48
[INFO] [stdout]     |
[INFO] [stdout] 186 | ...                   notifications.push(SessionEvent::ModuleIdChanged(
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 187 | ...                       ModulePath(last_id),
[INFO] [stdout]     |                           ------------------- expected `ModuleId`, found `ModulePath`
[INFO] [stdout] 188 | ...                       ModulePath(new_id),
[INFO] [stdout]     |                           ------------------ expected `ModuleId`, found `ModulePath`
[INFO] [stdout]     |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> src/events.rs:27:5
[INFO] [stdout]     |
[INFO] [stdout] 27  |     ModuleIdChanged(ModuleId, ModuleId),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:211:72
[INFO] [stdout]     |
[INFO] [stdout] 211 | ...                   notifications.push(SessionEvent::NewModule(info.id));
[INFO] [stdout]     |                                          ----------------------- ^^^^^^^ expected `ModuleId`, found `ModulePath`
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          arguments to this enum variant are incorrect
[INFO] [stdout]     |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> src/events.rs:18:5
[INFO] [stdout]     |
[INFO] [stdout] 18  |     NewModule(ModuleId),
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:313:36
[INFO] [stdout]     |
[INFO] [stdout] 313 |                     locations.push(loc);
[INFO] [stdout]     |                               ---- ^^^ expected `LocationId`, found `Arc<RwLock<RefLocationPath>>`
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected struct `location::LocationId`
[INFO] [stdout]                found struct `Arc<RwLock<location::RefLocationPath>>`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> /rustc/e6e4f7ed1589e03bc2f6c5931c1a72e7947e8682/library/alloc/src/vec/mod.rs:1824:12
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:313:36
[INFO] [stdout]     |
[INFO] [stdout] 313 |                     locations.push(loc);
[INFO] [stdout]     |                               ---- ^^^ expected `LocationId`, found `Arc<RwLock<RefLocationPath>>`
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected struct `location::LocationId`
[INFO] [stdout]                found struct `Arc<RwLock<location::RefLocationPath>>`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> /rustc/e6e4f7ed1589e03bc2f6c5931c1a72e7947e8682/library/alloc/src/vec/mod.rs:1824:12
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `notify` found for struct `Arc<RwLock<element::RefElementPath>>` in the current scope
[INFO] [stdout]    --> src/local_session/session.rs:325:37
[INFO] [stdout]     |
[INFO] [stdout] 325 |                     let _ = element.notify(Event::SessionEvent(event.clone()));
[INFO] [stdout]     |                                     ^^^^^^ method not found in `Arc<RwLock<RefElementPath>>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following traits define an item `notify`, perhaps you need to implement one of them:
[INFO] [stdout]             candidate #1: `common::Common`
[INFO] [stdout]             candidate #2: `module::TModule`
[INFO] [stdout]             candidate #3: `module::TModuleHelper`
[INFO] [stdout]             candidate #4: `session::TSession`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:349:68
[INFO] [stdout]     |
[INFO] [stdout] 349 |         let _ = self.notify_all(vec![SessionEvent::DestroyedModule(module_id)]);
[INFO] [stdout]     |                                      ----------------------------- ^^^^^^^^^ expected `ModuleId`, found `ModulePath`
[INFO] [stdout]     |                                      |
[INFO] [stdout]     |                                      arguments to this enum variant are incorrect
[INFO] [stdout]     |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> src/events.rs:22:5
[INFO] [stdout]     |
[INFO] [stdout] 22  |     DestroyedModule(ModuleId),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:359:73
[INFO] [stdout]     |
[INFO] [stdout] 359 |                 .retain(|e| *e.read().unwrap().owner.read().unwrap() != *info.read().unwrap());
[INFO] [stdout]     |                             ----------------------------------------    ^^^^^^^^^^^^^^^^^^^^^ expected `RefModulePath`, found `Path`
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             expected because this is `module::RefModulePath`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `index` on type `RwLockReadGuard<'_, types::Path>`
[INFO] [stdout]    --> src/local_session/session.rs:369:41
[INFO] [stdout]     |
[INFO] [stdout] 369 |                 let last = info.read()?.index;
[INFO] [stdout]     |                                         ^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `notify` found for struct `Arc<RwLock<element::RefElementPath>>` in the current scope
[INFO] [stdout]    --> src/local_session/session.rs:325:37
[INFO] [stdout]     |
[INFO] [stdout] 325 |                     let _ = element.notify(Event::SessionEvent(event.clone()));
[INFO] [stdout]     |                                     ^^^^^^ method not found in `Arc<RwLock<RefElementPath>>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following traits define an item `notify`, perhaps you need to implement one of them:
[INFO] [stdout]             candidate #1: `common::Common`
[INFO] [stdout]             candidate #2: `module::TModule`
[INFO] [stdout]             candidate #3: `module::TModuleHelper`
[INFO] [stdout]             candidate #4: `session::TSession`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `index` on type `RwLockWriteGuard<'_, types::Path>`
[INFO] [stdout]    --> src/local_session/session.rs:372:31
[INFO] [stdout]     |
[INFO] [stdout] 372 |                 info.write()?.index = new;
[INFO] [stdout]     |                               ^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:349:68
[INFO] [stdout]     |
[INFO] [stdout] 349 |         let _ = self.notify_all(vec![SessionEvent::DestroyedModule(module_id)]);
[INFO] [stdout]     |                                      ----------------------------- ^^^^^^^^^ expected `ModuleId`, found `ModulePath`
[INFO] [stdout]     |                                      |
[INFO] [stdout]     |                                      arguments to this enum variant are incorrect
[INFO] [stdout]     |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> src/events.rs:22:5
[INFO] [stdout]     |
[INFO] [stdout] 22  |     DestroyedModule(ModuleId),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:359:73
[INFO] [stdout]     |
[INFO] [stdout] 359 |                 .retain(|e| *e.read().unwrap().owner.read().unwrap() != *info.read().unwrap());
[INFO] [stdout]     |                             ----------------------------------------    ^^^^^^^^^^^^^^^^^^^^^ expected `RefModulePath`, found `Path`
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             expected because this is `module::RefModulePath`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: a value of type `std::vec::Vec<&Arc<RwLock<module::RefModulePath>>>` cannot be built from an iterator over elements of type `&module::ModuleId`
[INFO] [stdout]    --> src/local_session/session.rs:431:14
[INFO] [stdout]     |
[INFO] [stdout] 431 |             .collect();
[INFO] [stdout]     |              ^^^^^^^ value of type `std::vec::Vec<&Arc<RwLock<module::RefModulePath>>>` cannot be built from `std::iter::Iterator<Item=&module::ModuleId>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `FromIterator<&module::ModuleId>` is not implemented for `std::vec::Vec<&Arc<RwLock<module::RefModulePath>>>`
[INFO] [stdout]     = help: the trait `FromIterator<T>` is implemented for `std::vec::Vec<T>`
[INFO] [stdout] note: the method call chain might not have had the expected associated types
[INFO] [stdout]    --> src/local_session/session.rs:421:14
[INFO] [stdout]     |
[INFO] [stdout] 418 |           let modules = self.get_modules(0..modules_len)?;
[INFO] [stdout]     |                         --------------------------------- this expression has type `Vec<ModuleId>`
[INFO] [stdout] ...
[INFO] [stdout] 421 |               .iter()
[INFO] [stdout]     |                ^^^^^^ `Iterator::Item` is `&ModuleId` here
[INFO] [stdout] 422 |               .filter(|module| {
[INFO] [stdout]     |  ______________-
[INFO] [stdout] 423 | |                 let Ok(accepted_protocols) = module.accepted_protocols() else {return false};
[INFO] [stdout] 424 | |                 let len = accepted_protocols
[INFO] [stdout] 425 | |                     .iter()
[INFO] [stdout] ...   |
[INFO] [stdout] 429 | |                 len == info.supports_protocols.len()
[INFO] [stdout] 430 | |             })
[INFO] [stdout]     | |______________- `Iterator::Item` remains `&ModuleId` here
[INFO] [stdout] note: required by a bound in `collect`
[INFO] [stdout]    --> /rustc/e6e4f7ed1589e03bc2f6c5931c1a72e7947e8682/library/core/src/iter/traits/iterator.rs:1891:5
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `index` on type `RwLockReadGuard<'_, types::Path>`
[INFO] [stdout]    --> src/local_session/session.rs:369:41
[INFO] [stdout]     |
[INFO] [stdout] 369 |                 let last = info.read()?.index;
[INFO] [stdout]     |                                         ^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `index` on type `RwLockWriteGuard<'_, types::Path>`
[INFO] [stdout]    --> src/local_session/session.rs:372:31
[INFO] [stdout]     |
[INFO] [stdout] 372 |                 info.write()?.index = new;
[INFO] [stdout]     |                               ^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:510:36
[INFO] [stdout]     |
[INFO] [stdout] 510 |         let info = self.get_module(owner)?.read()?.ref_id.clone();
[INFO] [stdout]     |                         ---------- ^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: a value of type `std::vec::Vec<&Arc<RwLock<module::RefModulePath>>>` cannot be built from an iterator over elements of type `&module::ModuleId`
[INFO] [stdout]    --> src/local_session/session.rs:431:14
[INFO] [stdout]     |
[INFO] [stdout] 431 |             .collect();
[INFO] [stdout]     |              ^^^^^^^ value of type `std::vec::Vec<&Arc<RwLock<module::RefModulePath>>>` cannot be built from `std::iter::Iterator<Item=&module::ModuleId>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `FromIterator<&module::ModuleId>` is not implemented for `std::vec::Vec<&Arc<RwLock<module::RefModulePath>>>`
[INFO] [stdout]     = help: the trait `FromIterator<T>` is implemented for `std::vec::Vec<T>`
[INFO] [stdout] note: the method call chain might not have had the expected associated types
[INFO] [stdout]    --> src/local_session/session.rs:421:14
[INFO] [stdout]     |
[INFO] [stdout] 418 |           let modules = self.get_modules(0..modules_len)?;
[INFO] [stdout]     |                         --------------------------------- this expression has type `Vec<ModuleId>`
[INFO] [stdout] ...
[INFO] [stdout] 421 |               .iter()
[INFO] [stdout]     |                ^^^^^^ `Iterator::Item` is `&ModuleId` here
[INFO] [stdout] 422 |               .filter(|module| {
[INFO] [stdout]     |  ______________-
[INFO] [stdout] 423 | |                 let Ok(accepted_protocols) = module.accepted_protocols() else {return false};
[INFO] [stdout] 424 | |                 let len = accepted_protocols
[INFO] [stdout] 425 | |                     .iter()
[INFO] [stdout] ...   |
[INFO] [stdout] 429 | |                 len == info.supports_protocols.len()
[INFO] [stdout] 430 | |             })
[INFO] [stdout]     | |______________- `Iterator::Item` remains `&ModuleId` here
[INFO] [stdout] note: required by a bound in `collect`
[INFO] [stdout]    --> /rustc/e6e4f7ed1589e03bc2f6c5931c1a72e7947e8682/library/core/src/iter/traits/iterator.rs:1891:5
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:514:39
[INFO] [stdout]     |
[INFO] [stdout] 514 |             (action.read()?.callback)(info, data);
[INFO] [stdout]     |             ------------------------- ^^^^ expected `Arc<RwLock<RefModulePath>>`, found `Arc<RwLock<Path>>`
[INFO] [stdout]     |             |
[INFO] [stdout]     |             arguments to this function are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected struct `Arc<RwLock<module::RefModulePath>>`
[INFO] [stdout]                found struct `Arc<RwLock<types::Path>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:510:36
[INFO] [stdout]     |
[INFO] [stdout] 510 |         let info = self.get_module(owner)?.read()?.ref_id.clone();
[INFO] [stdout]     |                         ---------- ^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:531:12
[INFO] [stdout]     |
[INFO] [stdout] 528 |             modules.push(info.clone())
[INFO] [stdout]     |             -------      ------------ this argument has type `Arc<RwLock<types::Path>>`...
[INFO] [stdout]     |             |
[INFO] [stdout]     |             ... which causes `modules` to have type `std::vec::Vec<Arc<RwLock<types::Path>>>`
[INFO] [stdout] ...
[INFO] [stdout] 531 |         Ok(modules)
[INFO] [stdout]     |         -- ^^^^^^^ expected `Vec<Arc<RwLock<RefModulePath>>>`, found `Vec<Arc<RwLock<Path>>>`
[INFO] [stdout]     |         |
[INFO] [stdout]     |         arguments to this enum variant are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected struct `std::vec::Vec<Arc<RwLock<module::RefModulePath>>>`
[INFO] [stdout]                found struct `std::vec::Vec<Arc<RwLock<types::Path>>>`
[INFO] [stdout] help: the type constructed contains `std::vec::Vec<Arc<RwLock<types::Path>>>` due to the type of the argument passed
[INFO] [stdout]    --> src/local_session/session.rs:531:9
[INFO] [stdout]     |
[INFO] [stdout] 531 |         Ok(modules)
[INFO] [stdout]     |         ^^^-------^
[INFO] [stdout]     |            |
[INFO] [stdout]     |            this argument influences the type of `Ok`
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> /rustc/e6e4f7ed1589e03bc2f6c5931c1a72e7947e8682/library/core/src/result.rs:506:5
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:514:39
[INFO] [stdout]     |
[INFO] [stdout] 514 |             (action.read()?.callback)(info, data);
[INFO] [stdout]     |             ------------------------- ^^^^ expected `Arc<RwLock<RefModulePath>>`, found `Arc<RwLock<Path>>`
[INFO] [stdout]     |             |
[INFO] [stdout]     |             arguments to this function are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected struct `Arc<RwLock<module::RefModulePath>>`
[INFO] [stdout]                found struct `Arc<RwLock<types::Path>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:535:28
[INFO] [stdout]     |
[INFO] [stdout] 535 |         Ok(self.get_module(module_id)?.read()?.name.clone())
[INFO] [stdout]     |                 ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:531:12
[INFO] [stdout]     |
[INFO] [stdout] 528 |             modules.push(info.clone())
[INFO] [stdout]     |             -------      ------------ this argument has type `Arc<RwLock<types::Path>>`...
[INFO] [stdout]     |             |
[INFO] [stdout]     |             ... which causes `modules` to have type `std::vec::Vec<Arc<RwLock<types::Path>>>`
[INFO] [stdout] ...
[INFO] [stdout] 531 |         Ok(modules)
[INFO] [stdout]     |         -- ^^^^^^^ expected `Vec<Arc<RwLock<RefModulePath>>>`, found `Vec<Arc<RwLock<Path>>>`
[INFO] [stdout]     |         |
[INFO] [stdout]     |         arguments to this enum variant are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected struct `std::vec::Vec<Arc<RwLock<module::RefModulePath>>>`
[INFO] [stdout]                found struct `std::vec::Vec<Arc<RwLock<types::Path>>>`
[INFO] [stdout] help: the type constructed contains `std::vec::Vec<Arc<RwLock<types::Path>>>` due to the type of the argument passed
[INFO] [stdout]    --> src/local_session/session.rs:531:9
[INFO] [stdout]     |
[INFO] [stdout] 531 |         Ok(modules)
[INFO] [stdout]     |         ^^^-------^
[INFO] [stdout]     |            |
[INFO] [stdout]     |            this argument influences the type of `Ok`
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> /rustc/e6e4f7ed1589e03bc2f6c5931c1a72e7947e8682/library/core/src/result.rs:506:5
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:535:28
[INFO] [stdout]     |
[INFO] [stdout] 535 |         Ok(self.get_module(module_id)?.read()?.name.clone())
[INFO] [stdout]     |                 ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:539:25
[INFO] [stdout]     |
[INFO] [stdout] 539 |         self.get_module(module_id)?.write()?.name = name;
[INFO] [stdout]     |              ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:539:25
[INFO] [stdout]     |
[INFO] [stdout] 539 |         self.get_module(module_id)?.write()?.name = name;
[INFO] [stdout]     |              ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:544:38
[INFO] [stdout]     |
[INFO] [stdout] 544 |         let module = self.get_module(module_id)?;
[INFO] [stdout]     |                           ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:550:33
[INFO] [stdout]     |
[INFO] [stdout] 550 |         let m = self.get_module(module_id)?;
[INFO] [stdout]     |                      ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:556:33
[INFO] [stdout]     |
[INFO] [stdout] 556 |         let m = self.get_module(module_id)?;
[INFO] [stdout]     |                      ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:565:33
[INFO] [stdout]     |
[INFO] [stdout] 565 |         let m = self.get_module(module_id)?;
[INFO] [stdout]     |                      ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:571:28
[INFO] [stdout]     |
[INFO] [stdout] 571 |         Ok(self.get_module(module_id)?.read()?.desc.clone())
[INFO] [stdout]     |                 ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:544:38
[INFO] [stdout]     |
[INFO] [stdout] 544 |         let module = self.get_module(module_id)?;
[INFO] [stdout]     |                           ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:575:25
[INFO] [stdout]     |
[INFO] [stdout] 575 |         self.get_module(module_id)?.write()?.desc = desc;
[INFO] [stdout]     |              ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:550:33
[INFO] [stdout]     |
[INFO] [stdout] 550 |         let m = self.get_module(module_id)?;
[INFO] [stdout]     |                      ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:580:38
[INFO] [stdout]     |
[INFO] [stdout] 580 |         let module = self.get_module(module_id)?;
[INFO] [stdout]     |                           ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:556:33
[INFO] [stdout]     |
[INFO] [stdout] 556 |         let m = self.get_module(module_id)?;
[INFO] [stdout]     |                      ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:586:28
[INFO] [stdout]     |
[INFO] [stdout] 586 |         Ok(self.get_module(module_id)?.read()?.proxy)
[INFO] [stdout]     |                 ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:565:33
[INFO] [stdout]     |
[INFO] [stdout] 565 |         let m = self.get_module(module_id)?;
[INFO] [stdout]     |                      ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:590:25
[INFO] [stdout]     |
[INFO] [stdout] 590 |         self.get_module(module_id)?.write()?.proxy = proxy;
[INFO] [stdout]     |              ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:571:28
[INFO] [stdout]     |
[INFO] [stdout] 571 |         Ok(self.get_module(module_id)?.read()?.desc.clone())
[INFO] [stdout]     |                 ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:595:28
[INFO] [stdout]     |
[INFO] [stdout] 595 |         Ok(self.get_module(module_id)?.read()?.settings.clone())
[INFO] [stdout]     |                 ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:575:25
[INFO] [stdout]     |
[INFO] [stdout] 575 |         self.get_module(module_id)?.write()?.desc = desc;
[INFO] [stdout]     |              ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:603:25
[INFO] [stdout]     |
[INFO] [stdout] 603 |         self.get_module(module_id)?.write()?.settings = data;
[INFO] [stdout]     |              ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:580:38
[INFO] [stdout]     |
[INFO] [stdout] 580 |         let module = self.get_module(module_id)?;
[INFO] [stdout]     |                           ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:608:28
[INFO] [stdout]     |
[INFO] [stdout] 608 |         Ok(self.get_module(module_id)?.read()?.element_settings.clone())
[INFO] [stdout]     |                 ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:586:28
[INFO] [stdout]     |
[INFO] [stdout] 586 |         Ok(self.get_module(module_id)?.read()?.proxy)
[INFO] [stdout]     |                 ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:616:25
[INFO] [stdout]     |
[INFO] [stdout] 616 |         self.get_module(module_id)?.write()?.element_settings = data;
[INFO] [stdout]     |              ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:590:25
[INFO] [stdout]     |
[INFO] [stdout] 590 |         self.get_module(module_id)?.write()?.proxy = proxy;
[INFO] [stdout]     |              ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:622:25
[INFO] [stdout]     |
[INFO] [stdout] 622 |             .get_module(module_id)?
[INFO] [stdout]     |              ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:595:28
[INFO] [stdout]     |
[INFO] [stdout] 595 |         Ok(self.get_module(module_id)?.read()?.settings.clone())
[INFO] [stdout]     |                 ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:633:25
[INFO] [stdout]     |
[INFO] [stdout] 633 |         self.get_module(module_id)?.write()?.location_settings = data;
[INFO] [stdout]     |              ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:603:25
[INFO] [stdout]     |
[INFO] [stdout] 603 |         self.get_module(module_id)?.write()?.settings = data;
[INFO] [stdout]     |              ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:642:47
[INFO] [stdout]     |
[INFO] [stdout] 642 |         let location_info = self.get_location(location_id)?.read()?.ref_id.clone();
[INFO] [stdout]     |                                  ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]     |                                  |
[INFO] [stdout]     |                                  arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&location::LocationId`
[INFO] [stdout]                found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:63:8
[INFO] [stdout]     |
[INFO] [stdout] 63  |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:608:28
[INFO] [stdout]     |
[INFO] [stdout] 608 |         Ok(self.get_module(module_id)?.read()?.element_settings.clone())
[INFO] [stdout]     |                 ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:616:25
[INFO] [stdout]     |
[INFO] [stdout] 616 |         self.get_module(module_id)?.write()?.element_settings = data;
[INFO] [stdout]     |              ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:643:25
[INFO] [stdout]     |
[INFO] [stdout] 643 |         self.get_module(module_id)?
[INFO] [stdout]     |              ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:622:25
[INFO] [stdout]     |
[INFO] [stdout] 622 |             .get_module(module_id)?
[INFO] [stdout]     |              ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:646:28
[INFO] [stdout]     |
[INFO] [stdout] 646 |             .init_location(location_info)?;
[INFO] [stdout]     |              ------------- ^^^^^^^^^^^^^ expected `LocationId`, found `Arc<RwLock<Path>>`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected struct `location::LocationId`
[INFO] [stdout]                found struct `Arc<RwLock<types::Path>>`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/module.rs:180:8
[INFO] [stdout]     |
[INFO] [stdout] 180 |     fn init_location(&self, location_ref: LocationId) -> Result<(), SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:633:25
[INFO] [stdout]     |
[INFO] [stdout] 633 |         self.get_module(module_id)?.write()?.location_settings = data;
[INFO] [stdout]     |              ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:655:38
[INFO] [stdout]     |
[INFO] [stdout] 655 |         let module = self.get_module(module_id)?;
[INFO] [stdout]     |                           ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:642:47
[INFO] [stdout]     |
[INFO] [stdout] 642 |         let location_info = self.get_location(location_id)?.read()?.ref_id.clone();
[INFO] [stdout]     |                                  ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]     |                                  |
[INFO] [stdout]     |                                  arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&location::LocationId`
[INFO] [stdout]                found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:63:8
[INFO] [stdout]     |
[INFO] [stdout] 63  |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:657:40
[INFO] [stdout]     |
[INFO] [stdout] 657 |         let element = self.get_element(element_id)?;
[INFO] [stdout]     |                            ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&element::ElementId`
[INFO] [stdout]                found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:64:8
[INFO] [stdout]     |
[INFO] [stdout] 64  |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:643:25
[INFO] [stdout]     |
[INFO] [stdout] 643 |         self.get_module(module_id)?
[INFO] [stdout]     |              ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:664:36
[INFO] [stdout]     |
[INFO] [stdout] 664 |         module.module.init_element(element)?;
[INFO] [stdout]     |                       ------------ ^^^^^^^ expected `ElementId`, found `Arc<RwLock<Element>>`
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected struct `element::ElementId`
[INFO] [stdout]                found struct `Arc<RwLock<element::Element>>`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/module.rs:167:8
[INFO] [stdout]     |
[INFO] [stdout] 167 |     fn init_element(&self, element_row: ElementId) -> Result<(), SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:646:28
[INFO] [stdout]     |
[INFO] [stdout] 646 |             .init_location(location_info)?;
[INFO] [stdout]     |              ------------- ^^^^^^^^^^^^^ expected `LocationId`, found `Arc<RwLock<Path>>`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected struct `location::LocationId`
[INFO] [stdout]                found struct `Arc<RwLock<types::Path>>`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/module.rs:180:8
[INFO] [stdout]     |
[INFO] [stdout] 180 |     fn init_location(&self, location_ref: LocationId) -> Result<(), SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:670:28
[INFO] [stdout]     |
[INFO] [stdout] 670 |         Ok(self.get_module(module_id)?.read()?.module.accept_url(url))
[INFO] [stdout]     |                 ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:655:38
[INFO] [stdout]     |
[INFO] [stdout] 655 |         let module = self.get_module(module_id)?;
[INFO] [stdout]     |                           ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:679:25
[INFO] [stdout]     |
[INFO] [stdout] 679 |             .get_module(module_id)?
[INFO] [stdout]     |              ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:657:40
[INFO] [stdout]     |
[INFO] [stdout] 657 |         let element = self.get_element(element_id)?;
[INFO] [stdout]     |                            ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&element::ElementId`
[INFO] [stdout]                found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:64:8
[INFO] [stdout]     |
[INFO] [stdout] 64  |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:690:25
[INFO] [stdout]     |
[INFO] [stdout] 690 |             .get_module(module_id)?
[INFO] [stdout]     |              ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:701:25
[INFO] [stdout]     |
[INFO] [stdout] 701 |             .get_module(module_id)?
[INFO] [stdout]     |              ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:664:36
[INFO] [stdout]     |
[INFO] [stdout] 664 |         module.module.init_element(element)?;
[INFO] [stdout]     |                       ------------ ^^^^^^^ expected `ElementId`, found `Arc<RwLock<Element>>`
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected struct `element::ElementId`
[INFO] [stdout]                found struct `Arc<RwLock<element::Element>>`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/module.rs:167:8
[INFO] [stdout]     |
[INFO] [stdout] 167 |     fn init_element(&self, element_row: ElementId) -> Result<(), SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:716:37
[INFO] [stdout]     |
[INFO] [stdout] 716 |             let m = self.get_module(module_id)?;
[INFO] [stdout]     |                          ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |                          |
[INFO] [stdout]     |                          arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:670:28
[INFO] [stdout]     |
[INFO] [stdout] 670 |         Ok(self.get_module(module_id)?.read()?.module.accept_url(url))
[INFO] [stdout]     |                 ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:679:25
[INFO] [stdout]     |
[INFO] [stdout] 679 |             .get_module(module_id)?
[INFO] [stdout]     |              ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:690:25
[INFO] [stdout]     |
[INFO] [stdout] 690 |             .get_module(module_id)?
[INFO] [stdout]     |              ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:701:25
[INFO] [stdout]     |
[INFO] [stdout] 701 |             .get_module(module_id)?
[INFO] [stdout]     |              ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:716:37
[INFO] [stdout]     |
[INFO] [stdout] 716 |             let m = self.get_module(module_id)?;
[INFO] [stdout]     |                          ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |                          |
[INFO] [stdout]     |                          arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:720:40
[INFO] [stdout]     |
[INFO] [stdout] 720 |         let element = self.get_element(element_id)?;
[INFO] [stdout]     |                            ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&element::ElementId`
[INFO] [stdout]                found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:64:8
[INFO] [stdout]     |
[INFO] [stdout] 64  |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:756:37
[INFO] [stdout]     |
[INFO] [stdout] 756 |             let m = self.get_module(module_id)?;
[INFO] [stdout]     |                          ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |                          |
[INFO] [stdout]     |                          arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:760:42
[INFO] [stdout]     |
[INFO] [stdout] 760 |         let location = self.get_location(location_id)?;
[INFO] [stdout]     |                             ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&location::LocationId`
[INFO] [stdout]                found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:63:8
[INFO] [stdout]     |
[INFO] [stdout] 63  |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:720:40
[INFO] [stdout]     |
[INFO] [stdout] 720 |         let element = self.get_element(element_id)?;
[INFO] [stdout]     |                            ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&element::ElementId`
[INFO] [stdout]                found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:64:8
[INFO] [stdout]     |
[INFO] [stdout] 64  |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:770:49
[INFO] [stdout]     |
[INFO] [stdout] 770 |         let mut element_uid = self.get_location(location_id)?.read()?.elements.len();
[INFO] [stdout]     |                                    ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]     |                                    |
[INFO] [stdout]     |                                    arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&location::LocationId`
[INFO] [stdout]                found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:63:8
[INFO] [stdout]     |
[INFO] [stdout] 63  |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:773:27
[INFO] [stdout]     |
[INFO] [stdout] 773 |             .get_location(location_id)?
[INFO] [stdout]     |              ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&location::LocationId`
[INFO] [stdout]                found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:63:8
[INFO] [stdout]     |
[INFO] [stdout] 63  |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:756:37
[INFO] [stdout]     |
[INFO] [stdout] 756 |             let m = self.get_module(module_id)?;
[INFO] [stdout]     |                          ---------- ^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]     |                          |
[INFO] [stdout]     |                          arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&module::ModuleId`
[INFO] [stdout]                found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:65:8
[INFO] [stdout]     |
[INFO] [stdout] 65  |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:794:38
[INFO] [stdout]     |
[INFO] [stdout] 794 |         let path = self.get_location(location_id)?.read()?.path.join(name);
[INFO] [stdout]     |                         ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&location::LocationId`
[INFO] [stdout]                found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:63:8
[INFO] [stdout]     |
[INFO] [stdout] 63  |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:760:42
[INFO] [stdout]     |
[INFO] [stdout] 760 |         let location = self.get_location(location_id)?;
[INFO] [stdout]     |                             ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&location::LocationId`
[INFO] [stdout]                found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:63:8
[INFO] [stdout]     |
[INFO] [stdout] 63  |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:816:27
[INFO] [stdout]     |
[INFO] [stdout] 816 |         self.get_location(location_id)?
[INFO] [stdout]     |              ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&location::LocationId`
[INFO] [stdout]                found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:63:8
[INFO] [stdout]     |
[INFO] [stdout] 63  |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:770:49
[INFO] [stdout]     |
[INFO] [stdout] 770 |         let mut element_uid = self.get_location(location_id)?.read()?.elements.len();
[INFO] [stdout]     |                                    ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]     |                                    |
[INFO] [stdout]     |                                    arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&location::LocationId`
[INFO] [stdout]                found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:63:8
[INFO] [stdout]     |
[INFO] [stdout] 63  |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:821:31
[INFO] [stdout]     |
[INFO] [stdout] 821 |             self.get_location(location_id)?
[INFO] [stdout]     |                  ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&location::LocationId`
[INFO] [stdout]                found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:63:8
[INFO] [stdout]     |
[INFO] [stdout] 63  |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:773:27
[INFO] [stdout]     |
[INFO] [stdout] 773 |             .get_location(location_id)?
[INFO] [stdout]     |              ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&location::LocationId`
[INFO] [stdout]                found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:63:8
[INFO] [stdout]     |
[INFO] [stdout] 63  |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:828:13
[INFO] [stdout]     |
[INFO] [stdout] 827 |         let _ = self.notify_all(vec![SessionEvent::NewElement(
[INFO] [stdout]     |                                      ------------------------ arguments to this enum variant are incorrect
[INFO] [stdout] 828 |             element_info.read()?.id.clone(),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `ElementId`, found `ElementPath`
[INFO] [stdout]     |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> src/events.rs:16:5
[INFO] [stdout]     |
[INFO] [stdout] 16  |     NewElement(ElementId),
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:794:38
[INFO] [stdout]     |
[INFO] [stdout] 794 |         let path = self.get_location(location_id)?.read()?.path.join(name);
[INFO] [stdout]     |                         ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&location::LocationId`
[INFO] [stdout]                found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:63:8
[INFO] [stdout]     |
[INFO] [stdout] 63  |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:835:42
[INFO] [stdout]     |
[INFO] [stdout] 835 |         let location = self.get_location(&info.id.location_id)?;
[INFO] [stdout]     |                             ------------ ^^^^^^^^^^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&location::LocationId`
[INFO] [stdout]                found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:63:8
[INFO] [stdout]     |
[INFO] [stdout] 63  |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:836:49
[INFO] [stdout]     |
[INFO] [stdout] 836 |         let location_ref = self.get_location_id(&info.id.location_id)?;
[INFO] [stdout]     |                                 --------------- ^^^^^^^^^^^^^^^^^^^^ expected `u64`, found `&LocationPath`
[INFO] [stdout]     |                                 |
[INFO] [stdout]     |                                 arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/session.rs:324:8
[INFO] [stdout]     |
[INFO] [stdout] 324 |     fn get_location_id(&self, uid: UID) -> Result<LocationId, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:816:27
[INFO] [stdout]     |
[INFO] [stdout] 816 |         self.get_location(location_id)?
[INFO] [stdout]     |              ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&location::LocationId`
[INFO] [stdout]                found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:63:8
[INFO] [stdout]     |
[INFO] [stdout] 63  |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:867:13
[INFO] [stdout]     |
[INFO] [stdout] 867 |             module,
[INFO] [stdout]     |             ^^^^^^ expected `Option<Arc<RwLock<RefModulePath>>>`, found `Option<ModuleId>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected enum `std::option::Option<Arc<RwLock<module::RefModulePath>>>`
[INFO] [stdout]                found enum `std::option::Option<module::ModuleId>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:821:31
[INFO] [stdout]     |
[INFO] [stdout] 821 |             self.get_location(location_id)?
[INFO] [stdout]     |                  ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&location::LocationId`
[INFO] [stdout]                found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:63:8
[INFO] [stdout]     |
[INFO] [stdout] 63  |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:828:13
[INFO] [stdout]     |
[INFO] [stdout] 827 |         let _ = self.notify_all(vec![SessionEvent::NewElement(
[INFO] [stdout]     |                                      ------------------------ arguments to this enum variant are incorrect
[INFO] [stdout] 828 |             element_info.read()?.id.clone(),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `ElementId`, found `ElementPath`
[INFO] [stdout]     |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> src/events.rs:16:5
[INFO] [stdout]     |
[INFO] [stdout] 16  |     NewElement(ElementId),
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: arguments to this enum variant are incorrect
[INFO] [stdout]    --> src/local_session/session.rs:896:40
[INFO] [stdout]     |
[INFO] [stdout] 896 |                     notifications.push(SessionEvent::ElementIdChanged(last_id, new_id));
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -------  ------ expected `ElementId`, found `ElementPath`
[INFO] [stdout]     |                                                                       |
[INFO] [stdout]     |                                                                       expected `ElementId`, found `ElementPath`
[INFO] [stdout]     |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> src/events.rs:25:5
[INFO] [stdout]     |
[INFO] [stdout] 25  |     ElementIdChanged(ElementId, ElementId),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:835:42
[INFO] [stdout]     |
[INFO] [stdout] 835 |         let location = self.get_location(&info.id.location_id)?;
[INFO] [stdout]     |                             ------------ ^^^^^^^^^^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&location::LocationId`
[INFO] [stdout]                found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:63:8
[INFO] [stdout]     |
[INFO] [stdout] 63  |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:912:53
[INFO] [stdout]     |
[INFO] [stdout] 912 |         notifications.push(SessionEvent::NewElement(element_id.read()?.id.clone()));
[INFO] [stdout]     |                            ------------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `ElementId`, found `ElementPath`
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            arguments to this enum variant are incorrect
[INFO] [stdout]     |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> src/events.rs:16:5
[INFO] [stdout]     |
[INFO] [stdout] 16  |     NewElement(ElementId),
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:836:49
[INFO] [stdout]     |
[INFO] [stdout] 836 |         let location_ref = self.get_location_id(&info.id.location_id)?;
[INFO] [stdout]     |                                 --------------- ^^^^^^^^^^^^^^^^^^^^ expected `u64`, found `&LocationPath`
[INFO] [stdout]     |                                 |
[INFO] [stdout]     |                                 arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/session.rs:324:8
[INFO] [stdout]     |
[INFO] [stdout] 324 |     fn get_location_id(&self, uid: UID) -> Result<LocationId, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:923:41
[INFO] [stdout]     |
[INFO] [stdout] 923 |         let elem = self.destroy_element(element_id.clone())?;
[INFO] [stdout]     |                         --------------- ^^^^^^^^^^^^^^^^^^ expected `u64`, found `ElementPath`
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/session.rs:165:8
[INFO] [stdout]     |
[INFO] [stdout] 165 |     fn destroy_element(&self, element_id: UID) -> Result<ERow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:867:13
[INFO] [stdout]     |
[INFO] [stdout] 867 |             module,
[INFO] [stdout]     |             ^^^^^^ expected `Option<Arc<RwLock<RefModulePath>>>`, found `Option<ModuleId>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected enum `std::option::Option<Arc<RwLock<module::RefModulePath>>>`
[INFO] [stdout]                found enum `std::option::Option<module::ModuleId>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:925:41
[INFO] [stdout]     |
[INFO] [stdout] 925 |         let new_uid = self.get_location(location_id)?.read()?.elements.len();
[INFO] [stdout]     |                            ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&location::LocationId`
[INFO] [stdout]                found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:63:8
[INFO] [stdout]     |
[INFO] [stdout] 63  |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:933:27
[INFO] [stdout]     |
[INFO] [stdout] 933 |         self.get_location(location_id)?
[INFO] [stdout]     |              ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&location::LocationId`
[INFO] [stdout]                found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:63:8
[INFO] [stdout]     |
[INFO] [stdout] 63  |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: arguments to this enum variant are incorrect
[INFO] [stdout]    --> src/local_session/session.rs:896:40
[INFO] [stdout]     |
[INFO] [stdout] 896 |                     notifications.push(SessionEvent::ElementIdChanged(last_id, new_id));
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -------  ------ expected `ElementId`, found `ElementPath`
[INFO] [stdout]     |                                                                       |
[INFO] [stdout]     |                                                                       expected `ElementId`, found `ElementPath`
[INFO] [stdout]     |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> src/events.rs:25:5
[INFO] [stdout]     |
[INFO] [stdout] 25  |     ElementIdChanged(ElementId, ElementId),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:912:53
[INFO] [stdout]     |
[INFO] [stdout] 912 |         notifications.push(SessionEvent::NewElement(element_id.read()?.id.clone()));
[INFO] [stdout]     |                            ------------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `ElementId`, found `ElementPath`
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            arguments to this enum variant are incorrect
[INFO] [stdout]     |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> src/events.rs:16:5
[INFO] [stdout]     |
[INFO] [stdout] 16  |     NewElement(ElementId),
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: arguments to this enum variant are incorrect
[INFO] [stdout]    --> src/local_session/session.rs:938:38
[INFO] [stdout]     |
[INFO] [stdout] 938 |         let _ = self.notify_all(vec![SessionEvent::ElementIdChanged(last, new)]);
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ----  --- expected `ElementId`, found `ElementPath`
[INFO] [stdout]     |                                                                     |
[INFO] [stdout]     |                                                                     expected `ElementId`, found `ElementPath`
[INFO] [stdout]     |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> src/events.rs:25:5
[INFO] [stdout]     |
[INFO] [stdout] 25  |     ElementIdChanged(ElementId, ElementId),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:923:41
[INFO] [stdout]     |
[INFO] [stdout] 923 |         let elem = self.destroy_element(element_id.clone())?;
[INFO] [stdout]     |                         --------------- ^^^^^^^^^^^^^^^^^^ expected `u64`, found `ElementPath`
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/session.rs:165:8
[INFO] [stdout]     |
[INFO] [stdout] 165 |     fn destroy_element(&self, element_id: UID) -> Result<ERow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:925:41
[INFO] [stdout]     |
[INFO] [stdout] 925 |         let new_uid = self.get_location(location_id)?.read()?.elements.len();
[INFO] [stdout]     |                            ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&location::LocationId`
[INFO] [stdout]                found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:63:8
[INFO] [stdout]     |
[INFO] [stdout] 63  |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:933:27
[INFO] [stdout]     |
[INFO] [stdout] 933 |         self.get_location(location_id)?
[INFO] [stdout]     |              ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&location::LocationId`
[INFO] [stdout]                found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:63:8
[INFO] [stdout]     |
[INFO] [stdout] 63  |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: arguments to this enum variant are incorrect
[INFO] [stdout]    --> src/local_session/session.rs:938:38
[INFO] [stdout]     |
[INFO] [stdout] 938 |         let _ = self.notify_all(vec![SessionEvent::ElementIdChanged(last, new)]);
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ----  --- expected `ElementId`, found `ElementPath`
[INFO] [stdout]     |                                                                     |
[INFO] [stdout]     |                                                                     expected `ElementId`, found `ElementPath`
[INFO] [stdout]     |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> src/events.rs:25:5
[INFO] [stdout]     |
[INFO] [stdout] 25  |     ElementIdChanged(ElementId, ElementId),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:943:37
[INFO] [stdout]     |
[INFO] [stdout] 943 |         let _ = self.get_element_id(&element_id)?;
[INFO] [stdout]     |                      -------------- ^^^^^^^^^^^ expected `u64`, found `&ElementPath`
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/session.rs:323:8
[INFO] [stdout]     |
[INFO] [stdout] 323 |     fn get_element_id(&self, uid: UID) -> Result<ElementId, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:943:37
[INFO] [stdout]     |
[INFO] [stdout] 943 |         let _ = self.get_element_id(&element_id)?;
[INFO] [stdout]     |                      -------------- ^^^^^^^^^^^ expected `u64`, found `&ElementPath`
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/session.rs:323:8
[INFO] [stdout]     |
[INFO] [stdout] 323 |     fn get_element_id(&self, uid: UID) -> Result<ElementId, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:945:69
[INFO] [stdout]     |
[INFO] [stdout] 945 |         let _ = self.notify_all(vec![SessionEvent::DestroyedElement(element_id.clone())]);
[INFO] [stdout]     |                                      ------------------------------ ^^^^^^^^^^^^^^^^^^ expected `ElementId`, found `ElementPath`
[INFO] [stdout]     |                                      |
[INFO] [stdout]     |                                      arguments to this enum variant are incorrect
[INFO] [stdout]     |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> src/events.rs:20:5
[INFO] [stdout]     |
[INFO] [stdout] 20  |     DestroyedElement(ElementId),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:948:27
[INFO] [stdout]     |
[INFO] [stdout] 948 |             .get_location(&element_id.location_id)?
[INFO] [stdout]     |              ------------ ^^^^^^^^^^^^^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&location::LocationId`
[INFO] [stdout]                found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:63:8
[INFO] [stdout]     |
[INFO] [stdout] 63  |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:955:27
[INFO] [stdout]     |
[INFO] [stdout] 955 |             .get_location(&element.read()?.ref_id.read()?.id.location_id)?
[INFO] [stdout]     |              ------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&location::LocationId`
[INFO] [stdout]                found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:63:8
[INFO] [stdout]     |
[INFO] [stdout] 63  |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:945:69
[INFO] [stdout]     |
[INFO] [stdout] 945 |         let _ = self.notify_all(vec![SessionEvent::DestroyedElement(element_id.clone())]);
[INFO] [stdout]     |                                      ------------------------------ ^^^^^^^^^^^^^^^^^^ expected `ElementId`, found `ElementPath`
[INFO] [stdout]     |                                      |
[INFO] [stdout]     |                                      arguments to this enum variant are incorrect
[INFO] [stdout]     |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> src/events.rs:20:5
[INFO] [stdout]     |
[INFO] [stdout] 20  |     DestroyedElement(ElementId),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:948:27
[INFO] [stdout]     |
[INFO] [stdout] 948 |             .get_location(&element_id.location_id)?
[INFO] [stdout]     |              ------------ ^^^^^^^^^^^^^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&location::LocationId`
[INFO] [stdout]                found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:63:8
[INFO] [stdout]     |
[INFO] [stdout] 63  |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:955:27
[INFO] [stdout]     |
[INFO] [stdout] 955 |             .get_location(&element.read()?.ref_id.read()?.id.location_id)?
[INFO] [stdout]     |              ------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&location::LocationId`
[INFO] [stdout]                found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:63:8
[INFO] [stdout]     |
[INFO] [stdout] 63  |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: arguments to this enum variant are incorrect
[INFO] [stdout]    --> src/local_session/session.rs:966:32
[INFO] [stdout]     |
[INFO] [stdout] 966 |               notifications.push(SessionEvent::ElementIdChanged(
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 967 |                   last,
[INFO] [stdout]     |                   ---- expected `ElementId`, found `ElementPath`
[INFO] [stdout] 968 | /                 ElementPath {
[INFO] [stdout] 969 | |                     index: i as u64,
[INFO] [stdout] 970 | |                     location_id: info.read()?.id.location_id.clone(),
[INFO] [stdout] 971 | |                 },
[INFO] [stdout]     | |_________________- expected `ElementId`, found `ElementPath`
[INFO] [stdout]     |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> src/events.rs:25:5
[INFO] [stdout]     |
[INFO] [stdout] 25  |     ElementIdChanged(ElementId, ElementId),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:981:29
[INFO] [stdout]     |
[INFO] [stdout] 981 |         Ok(self.get_element(element_id)?.read()?.name.clone())
[INFO] [stdout]     |                 ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&element::ElementId`
[INFO] [stdout]                found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:64:8
[INFO] [stdout]     |
[INFO] [stdout] 64  |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:985:26
[INFO] [stdout]     |
[INFO] [stdout] 985 |         self.get_element(element_id)?.write()?.name = name.to_owned();
[INFO] [stdout]     |              ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&element::ElementId`
[INFO] [stdout]                found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:64:8
[INFO] [stdout]     |
[INFO] [stdout] 64  |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:990:29
[INFO] [stdout]     |
[INFO] [stdout] 990 |         Ok(self.get_element(element_id)?.read()?.desc.clone())
[INFO] [stdout]     |                 ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&element::ElementId`
[INFO] [stdout]                found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:64:8
[INFO] [stdout]     |
[INFO] [stdout] 64  |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:994:26
[INFO] [stdout]     |
[INFO] [stdout] 994 |         self.get_element(element_id)?.write()?.desc = desc.to_owned();
[INFO] [stdout]     |              ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&element::ElementId`
[INFO] [stdout]                found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:64:8
[INFO] [stdout]     |
[INFO] [stdout] 64  |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:999:29
[INFO] [stdout]     |
[INFO] [stdout] 999 |         Ok(self.get_element(element_id)?.read()?.meta.clone())
[INFO] [stdout]     |                 ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&element::ElementId`
[INFO] [stdout]                found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:64:8
[INFO] [stdout]     |
[INFO] [stdout] 64  |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: arguments to this enum variant are incorrect
[INFO] [stdout]    --> src/local_session/session.rs:966:32
[INFO] [stdout]     |
[INFO] [stdout] 966 |               notifications.push(SessionEvent::ElementIdChanged(
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 967 |                   last,
[INFO] [stdout]     |                   ---- expected `ElementId`, found `ElementPath`
[INFO] [stdout] 968 | /                 ElementPath {
[INFO] [stdout] 969 | |                     index: i as u64,
[INFO] [stdout] 970 | |                     location_id: info.read()?.id.location_id.clone(),
[INFO] [stdout] 971 | |                 },
[INFO] [stdout]     | |_________________- expected `ElementId`, found `ElementPath`
[INFO] [stdout]     |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> src/events.rs:25:5
[INFO] [stdout]     |
[INFO] [stdout] 25  |     ElementIdChanged(ElementId, ElementId),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1003:26
[INFO] [stdout]      |
[INFO] [stdout] 1003 |         self.get_element(element_id)?.write()?.meta = meta.to_owned();
[INFO] [stdout]      |              ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:981:29
[INFO] [stdout]     |
[INFO] [stdout] 981 |         Ok(self.get_element(element_id)?.read()?.name.clone())
[INFO] [stdout]     |                 ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&element::ElementId`
[INFO] [stdout]                found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:64:8
[INFO] [stdout]     |
[INFO] [stdout] 64  |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1008:29
[INFO] [stdout]      |
[INFO] [stdout] 1008 |         Ok(self.get_element(element_id)?.read()?.url.clone())
[INFO] [stdout]      |                 ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1016:26
[INFO] [stdout]      |
[INFO] [stdout] 1016 |         self.get_element(element_id)?.write()?.url = url;
[INFO] [stdout]      |              ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:985:26
[INFO] [stdout]     |
[INFO] [stdout] 985 |         self.get_element(element_id)?.write()?.name = name.to_owned();
[INFO] [stdout]     |              ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&element::ElementId`
[INFO] [stdout]                found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:64:8
[INFO] [stdout]     |
[INFO] [stdout] 64  |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1021:29
[INFO] [stdout]      |
[INFO] [stdout] 1021 |         Ok(self.get_element(element_id)?.read()?.element_data.clone())
[INFO] [stdout]      |                 ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:990:29
[INFO] [stdout]     |
[INFO] [stdout] 990 |         Ok(self.get_element(element_id)?.read()?.desc.clone())
[INFO] [stdout]     |                 ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&element::ElementId`
[INFO] [stdout]                found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:64:8
[INFO] [stdout]     |
[INFO] [stdout] 64  |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1029:26
[INFO] [stdout]      |
[INFO] [stdout] 1029 |         self.get_element(element_id)?.write()?.element_data = data;
[INFO] [stdout]      |              ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:994:26
[INFO] [stdout]     |
[INFO] [stdout] 994 |         self.get_element(element_id)?.write()?.desc = desc.to_owned();
[INFO] [stdout]     |              ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&element::ElementId`
[INFO] [stdout]                found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:64:8
[INFO] [stdout]     |
[INFO] [stdout] 64  |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1034:29
[INFO] [stdout]      |
[INFO] [stdout] 1034 |         Ok(self.get_element(element_id)?.read()?.settings.clone())
[INFO] [stdout]      |                 ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/local_session/session.rs:999:29
[INFO] [stdout]     |
[INFO] [stdout] 999 |         Ok(self.get_element(element_id)?.read()?.meta.clone())
[INFO] [stdout]     |                 ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&element::ElementId`
[INFO] [stdout]                found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/local_session/session.rs:64:8
[INFO] [stdout]     |
[INFO] [stdout] 64  |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1042:26
[INFO] [stdout]      |
[INFO] [stdout] 1042 |         self.get_element(element_id)?.write()?.settings = data;
[INFO] [stdout]      |              ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1003:26
[INFO] [stdout]      |
[INFO] [stdout] 1003 |         self.get_element(element_id)?.write()?.meta = meta.to_owned();
[INFO] [stdout]      |              ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1047:49
[INFO] [stdout]      |
[INFO] [stdout] 1047 |         if let Some(module) = &self.get_element(element_id)?.read()?.module {
[INFO] [stdout]      |                                     ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1008:29
[INFO] [stdout]      |
[INFO] [stdout] 1008 |         Ok(self.get_element(element_id)?.read()?.url.clone())
[INFO] [stdout]      |                 ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1059:26
[INFO] [stdout]      |
[INFO] [stdout] 1059 |         self.get_element(element_id)?.write()?.module = match &module {
[INFO] [stdout]      |              ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1016:26
[INFO] [stdout]      |
[INFO] [stdout] 1016 |         self.get_element(element_id)?.write()?.url = url;
[INFO] [stdout]      |              ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1060:56
[INFO] [stdout]      |
[INFO] [stdout] 1060 |             Some(module_id) => Some(self.get_module_id(module_id)?),
[INFO] [stdout]      |                                          ------------- ^^^^^^^^^ expected `u64`, found `&ModulePath`
[INFO] [stdout]      |                                          |
[INFO] [stdout]      |                                          arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/session.rs:322:8
[INFO] [stdout]      |
[INFO] [stdout] 322  |     fn get_module_id(&self, uid: UID) -> Result<ModuleId, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1021:29
[INFO] [stdout]      |
[INFO] [stdout] 1021 |         Ok(self.get_element(element_id)?.read()?.element_data.clone())
[INFO] [stdout]      |                 ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1029:26
[INFO] [stdout]      |
[INFO] [stdout] 1029 |         self.get_element(element_id)?.write()?.element_data = data;
[INFO] [stdout]      |              ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1034:29
[INFO] [stdout]      |
[INFO] [stdout] 1034 |         Ok(self.get_element(element_id)?.read()?.settings.clone())
[INFO] [stdout]      |                 ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1042:26
[INFO] [stdout]      |
[INFO] [stdout] 1042 |         self.get_element(element_id)?.write()?.settings = data;
[INFO] [stdout]      |              ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1047:49
[INFO] [stdout]      |
[INFO] [stdout] 1047 |         if let Some(module) = &self.get_element(element_id)?.read()?.module {
[INFO] [stdout]      |                                     ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1059:26
[INFO] [stdout]      |
[INFO] [stdout] 1059 |         self.get_element(element_id)?.write()?.module = match &module {
[INFO] [stdout]      |              ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1060:56
[INFO] [stdout]      |
[INFO] [stdout] 1060 |             Some(module_id) => Some(self.get_module_id(module_id)?),
[INFO] [stdout]      |                                          ------------- ^^^^^^^^^ expected `u64`, found `&ModulePath`
[INFO] [stdout]      |                                          |
[INFO] [stdout]      |                                          arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/session.rs:322:8
[INFO] [stdout]      |
[INFO] [stdout] 322  |     fn get_module_id(&self, uid: UID) -> Result<ModuleId, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: `?` operator has incompatible types
[INFO] [stdout]     --> src/local_session/session.rs:1060:37
[INFO] [stdout]      |
[INFO] [stdout] 1060 |             Some(module_id) => Some(self.get_module_id(module_id)?),
[INFO] [stdout]      |                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Arc<RwLock<RefModulePath>>`, found `ModuleId`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `?` operator cannot convert from `module::ModuleId` to `Arc<RwLock<module::RefModulePath>>`
[INFO] [stdout]      = note: expected struct `Arc<RwLock<module::RefModulePath>>`
[INFO] [stdout]                 found struct `module::ModuleId`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: `?` operator has incompatible types
[INFO] [stdout]     --> src/local_session/session.rs:1060:37
[INFO] [stdout]      |
[INFO] [stdout] 1060 |             Some(module_id) => Some(self.get_module_id(module_id)?),
[INFO] [stdout]      |                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Arc<RwLock<RefModulePath>>`, found `ModuleId`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `?` operator cannot convert from `module::ModuleId` to `Arc<RwLock<module::RefModulePath>>`
[INFO] [stdout]      = note: expected struct `Arc<RwLock<module::RefModulePath>>`
[INFO] [stdout]                 found struct `module::ModuleId`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1067:29
[INFO] [stdout]      |
[INFO] [stdout] 1067 |         Ok(self.get_element(element_id)?.read()?.statuses.clone())
[INFO] [stdout]      |                 ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1067:29
[INFO] [stdout]      |
[INFO] [stdout] 1067 |         Ok(self.get_element(element_id)?.read()?.statuses.clone())
[INFO] [stdout]      |                 ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1075:26
[INFO] [stdout]      |
[INFO] [stdout] 1075 |         self.get_element(element_id)?.write()?.statuses = statuses;
[INFO] [stdout]      |              ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1075:26
[INFO] [stdout]      |
[INFO] [stdout] 1075 |         self.get_element(element_id)?.write()?.statuses = statuses;
[INFO] [stdout]      |              ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1080:29
[INFO] [stdout]      |
[INFO] [stdout] 1080 |         Ok(self.get_element(element_id)?.read()?.status)
[INFO] [stdout]      |                 ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1080:29
[INFO] [stdout]      |
[INFO] [stdout] 1080 |         Ok(self.get_element(element_id)?.read()?.status)
[INFO] [stdout]      |                 ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1088:41
[INFO] [stdout]      |
[INFO] [stdout] 1088 |         let statuses = self.get_element(element_id)?.read()?.statuses.len();
[INFO] [stdout]      |                             ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1090:30
[INFO] [stdout]      |
[INFO] [stdout] 1090 |             self.get_element(element_id)?.write()?.status = status;
[INFO] [stdout]      |                  ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |                  |
[INFO] [stdout]      |                  arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1098:29
[INFO] [stdout]      |
[INFO] [stdout] 1098 |         Ok(self.get_element(element_id)?.read()?.data.clone())
[INFO] [stdout]      |                 ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1102:26
[INFO] [stdout]      |
[INFO] [stdout] 1102 |         self.get_element(element_id)?.write()?.data = data;
[INFO] [stdout]      |              ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1107:29
[INFO] [stdout]      |
[INFO] [stdout] 1107 |         Ok(self.get_element(element_id)?.read()?.progress)
[INFO] [stdout]      |                 ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1115:26
[INFO] [stdout]      |
[INFO] [stdout] 1115 |         self.get_element(element_id)?.write()?.progress = progress;
[INFO] [stdout]      |              ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1088:41
[INFO] [stdout]      |
[INFO] [stdout] 1088 |         let statuses = self.get_element(element_id)?.read()?.statuses.len();
[INFO] [stdout]      |                             ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1120:29
[INFO] [stdout]      |
[INFO] [stdout] 1120 |         Ok(self.get_element(element_id)?.read()?.should_save)
[INFO] [stdout]      |                 ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1128:26
[INFO] [stdout]      |
[INFO] [stdout] 1128 |         self.get_element(element_id)?.write()?.should_save = should_save;
[INFO] [stdout]      |              ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1090:30
[INFO] [stdout]      |
[INFO] [stdout] 1090 |             self.get_element(element_id)?.write()?.status = status;
[INFO] [stdout]      |                  ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |                  |
[INFO] [stdout]      |                  arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1133:29
[INFO] [stdout]      |
[INFO] [stdout] 1133 |         Ok(self.get_element(element_id)?.read()?.enabled)
[INFO] [stdout]      |                 ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1098:29
[INFO] [stdout]      |
[INFO] [stdout] 1098 |         Ok(self.get_element(element_id)?.read()?.data.clone())
[INFO] [stdout]      |                 ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1142:40
[INFO] [stdout]      |
[INFO] [stdout] 1142 |         let element = self.get_element(element_id)?;
[INFO] [stdout]      |                            ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1102:26
[INFO] [stdout]      |
[INFO] [stdout] 1102 |         self.get_element(element_id)?.write()?.data = data;
[INFO] [stdout]      |              ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1107:29
[INFO] [stdout]      |
[INFO] [stdout] 1107 |         Ok(self.get_element(element_id)?.read()?.progress)
[INFO] [stdout]      |                 ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1115:26
[INFO] [stdout]      |
[INFO] [stdout] 1115 |         self.get_element(element_id)?.write()?.progress = progress;
[INFO] [stdout]      |              ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1120:29
[INFO] [stdout]      |
[INFO] [stdout] 1120 |         Ok(self.get_element(element_id)?.read()?.should_save)
[INFO] [stdout]      |                 ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `step_element` found for struct `Arc<RwLock<module::RefModulePath>>` in the current scope
[INFO] [stdout]     --> src/local_session/session.rs:1184:38
[INFO] [stdout]      |
[INFO] [stdout] 1184 |                         match module.step_element(
[INFO] [stdout]      |                               -------^^^^^^^^^^^^ method not found in `Arc<RwLock<RefModulePath>>`
[INFO] [stdout]      |
[INFO] [stdout]      = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]      = note: the following traits define an item `step_element`, perhaps you need to implement one of them:
[INFO] [stdout]              candidate #1: `module::TModule`
[INFO] [stdout]              candidate #2: `module::TModuleHelper`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1128:26
[INFO] [stdout]      |
[INFO] [stdout] 1128 |         self.get_element(element_id)?.write()?.should_save = should_save;
[INFO] [stdout]      |              ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1133:29
[INFO] [stdout]      |
[INFO] [stdout] 1133 |         Ok(self.get_element(element_id)?.read()?.enabled)
[INFO] [stdout]      |                 ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1142:40
[INFO] [stdout]      |
[INFO] [stdout] 1142 |         let element = self.get_element(element_id)?;
[INFO] [stdout]      |                            ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `get_name` found for struct `Arc<RwLock<module::RefModulePath>>` in the current scope
[INFO] [stdout]     --> src/local_session/session.rs:1196:44
[INFO] [stdout]      |
[INFO] [stdout] 1196 | ...                   module.get_name().unwrap(),
[INFO] [stdout]      |                              ^^^^^^^^ method not found in `Arc<RwLock<RefModulePath>>`
[INFO] [stdout]      |
[INFO] [stdout]      = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]      = note: the following traits define an item `get_name`, perhaps you need to implement one of them:
[INFO] [stdout]              candidate #1: `common::Common`
[INFO] [stdout]              candidate #2: `module::TModule`
[INFO] [stdout]              candidate #3: `module::TModuleHelper`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1215:29
[INFO] [stdout]      |
[INFO] [stdout] 1215 |         Ok(self.get_element(element_id)?.read()?.is_error)
[INFO] [stdout]      |                 ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1223:45
[INFO] [stdout]      |
[INFO] [stdout] 1223 |         if let Some(url) = self.get_element(element_id)?.read()?.url.clone() {
[INFO] [stdout]      |                                 ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `step_element` found for struct `Arc<RwLock<module::RefModulePath>>` in the current scope
[INFO] [stdout]     --> src/local_session/session.rs:1184:38
[INFO] [stdout]      |
[INFO] [stdout] 1184 |                         match module.step_element(
[INFO] [stdout]      |                               -------^^^^^^^^^^^^ method not found in `Arc<RwLock<RefModulePath>>`
[INFO] [stdout]      |
[INFO] [stdout]      = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]      = note: the following traits define an item `step_element`, perhaps you need to implement one of them:
[INFO] [stdout]              candidate #1: `module::TModule`
[INFO] [stdout]              candidate #2: `module::TModuleHelper`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `get_name` found for struct `Arc<RwLock<module::RefModulePath>>` in the current scope
[INFO] [stdout]     --> src/local_session/session.rs:1196:44
[INFO] [stdout]      |
[INFO] [stdout] 1196 | ...                   module.get_name().unwrap(),
[INFO] [stdout]      |                              ^^^^^^^^ method not found in `Arc<RwLock<RefModulePath>>`
[INFO] [stdout]      |
[INFO] [stdout]      = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]      = note: the following traits define an item `get_name`, perhaps you need to implement one of them:
[INFO] [stdout]              candidate #1: `common::Common`
[INFO] [stdout]              candidate #2: `module::TModule`
[INFO] [stdout]              candidate #3: `module::TModuleHelper`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1215:29
[INFO] [stdout]      |
[INFO] [stdout] 1215 |         Ok(self.get_element(element_id)?.read()?.is_error)
[INFO] [stdout]      |                 ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1223:45
[INFO] [stdout]      |
[INFO] [stdout] 1223 |         if let Some(url) = self.get_element(element_id)?.read()?.url.clone() {
[INFO] [stdout]      |                                 ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `read` found for struct `module::ModuleId` in the current scope
[INFO] [stdout]     --> src/local_session/session.rs:1226:45
[INFO] [stdout]      |
[INFO] [stdout] 1226 |                     .get_module(&tmp_module.read()?.index)?
[INFO] [stdout]      |                                             ^^^^ method not found in `ModuleId`
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/module.rs:50:1
[INFO] [stdout]      |
[INFO] [stdout] 50   | pub struct ModuleId {
[INFO] [stdout]      | ------------------- method `read` not found for this struct
[INFO] [stdout]      |
[INFO] [stdout]      = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]      = note: the following trait defines an item `read`, perhaps you need to implement it:
[INFO] [stdout]              candidate #1: `std::io::Read`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `id` found for struct `module::ModuleId` in the current scope
[INFO] [stdout]     --> src/local_session/session.rs:1238:61
[INFO] [stdout]      |
[INFO] [stdout] 1238 |             self.element_set_module(element_id, Some(module.id()))?;
[INFO] [stdout]      |                                                             ^^ method not found in `ModuleId`
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/module.rs:50:1
[INFO] [stdout]      |
[INFO] [stdout] 50   | pub struct ModuleId {
[INFO] [stdout]      | ------------------- method `id` not found for this struct
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `read` found for struct `module::ModuleId` in the current scope
[INFO] [stdout]     --> src/local_session/session.rs:1226:45
[INFO] [stdout]      |
[INFO] [stdout] 1226 |                     .get_module(&tmp_module.read()?.index)?
[INFO] [stdout]      |                                             ^^^^ method not found in `ModuleId`
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/module.rs:50:1
[INFO] [stdout]      |
[INFO] [stdout] 50   | pub struct ModuleId {
[INFO] [stdout]      | ------------------- method `read` not found for this struct
[INFO] [stdout]      |
[INFO] [stdout]      = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]      = note: the following trait defines an item `read`, perhaps you need to implement it:
[INFO] [stdout]              candidate #1: `std::io::Read`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1238:37
[INFO] [stdout]      |
[INFO] [stdout] 1238 |             self.element_set_module(element_id, Some(module.id()))?;
[INFO] [stdout]      |                  ------------------ ^^^^^^^^^^ expected `u64`, found `&ElementPath`
[INFO] [stdout]      |                  |
[INFO] [stdout]      |                  arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/session.rs:186:8
[INFO] [stdout]      |
[INFO] [stdout] 186  |     fn element_set_module(&self, element: UID, module: Option<UID>) -> Result<(), SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1246:39
[INFO] [stdout]      |
[INFO] [stdout] 1246 |         let thread = self.get_element(element_id)?.write()?.thread.take();
[INFO] [stdout]      |                           ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1257:40
[INFO] [stdout]      |
[INFO] [stdout] 1257 |         let element = self.get_element(element_id)?;
[INFO] [stdout]      |                            ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `id` found for struct `module::ModuleId` in the current scope
[INFO] [stdout]     --> src/local_session/session.rs:1238:61
[INFO] [stdout]      |
[INFO] [stdout] 1238 |             self.element_set_module(element_id, Some(module.id()))?;
[INFO] [stdout]      |                                                             ^^ method not found in `ModuleId`
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/module.rs:50:1
[INFO] [stdout]      |
[INFO] [stdout] 50   | pub struct ModuleId {
[INFO] [stdout]      | ------------------- method `id` not found for this struct
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1272:48
[INFO] [stdout]      |
[INFO] [stdout] 1272 |                 let __module = self.get_module(&__module.read()?.index)?;
[INFO] [stdout]      |                                     ---------- ^^^^^^^^^^^^^^^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&module::ModuleId`
[INFO] [stdout]                 found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:65:8
[INFO] [stdout]      |
[INFO] [stdout] 65   |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1238:37
[INFO] [stdout]      |
[INFO] [stdout] 1238 |             self.element_set_module(element_id, Some(module.id()))?;
[INFO] [stdout]      |                  ------------------ ^^^^^^^^^^ expected `u64`, found `&ElementPath`
[INFO] [stdout]      |                  |
[INFO] [stdout]      |                  arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/session.rs:186:8
[INFO] [stdout]      |
[INFO] [stdout] 186  |     fn element_set_module(&self, element: UID, module: Option<UID>) -> Result<(), SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1246:39
[INFO] [stdout]      |
[INFO] [stdout] 1246 |         let thread = self.get_element(element_id)?.write()?.thread.take();
[INFO] [stdout]      |                           ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `id` found for struct `Arc<RwLock<types::Path>>` in the current scope
[INFO] [stdout]     --> src/local_session/session.rs:1281:41
[INFO] [stdout]      |
[INFO] [stdout] 1281 |                     id: __module.ref_id.id(),
[INFO] [stdout]      |                                         ^^ method not found in `Arc<RwLock<Path>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1257:40
[INFO] [stdout]      |
[INFO] [stdout] 1257 |         let element = self.get_element(element_id)?;
[INFO] [stdout]      |                            ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1272:48
[INFO] [stdout]      |
[INFO] [stdout] 1272 |                 let __module = self.get_module(&__module.read()?.index)?;
[INFO] [stdout]      |                                     ---------- ^^^^^^^^^^^^^^^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&module::ModuleId`
[INFO] [stdout]                 found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:65:8
[INFO] [stdout]      |
[INFO] [stdout] 65   |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `id` found for struct `Arc<RwLock<element::RefElementPath>>` in the current scope
[INFO] [stdout]     --> src/local_session/session.rs:1303:32
[INFO] [stdout]      |
[INFO] [stdout] 1303 |             id: element.ref_id.id(),
[INFO] [stdout]      |                                ^^ method not found in `Arc<RwLock<RefElementPath>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1308:40
[INFO] [stdout]      |
[INFO] [stdout] 1308 |         let element = self.get_element(element_id)?;
[INFO] [stdout]      |                            ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `id` found for struct `Arc<RwLock<types::Path>>` in the current scope
[INFO] [stdout]     --> src/local_session/session.rs:1281:41
[INFO] [stdout]      |
[INFO] [stdout] 1281 |                     id: __module.ref_id.id(),
[INFO] [stdout]      |                                         ^^ method not found in `Arc<RwLock<Path>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1320:44
[INFO] [stdout]      |
[INFO] [stdout] 1320 |             let __module = self.get_module(&module.read()?.index)?;
[INFO] [stdout]      |                                 ---------- ^^^^^^^^^^^^^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&module::ModuleId`
[INFO] [stdout]                 found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:65:8
[INFO] [stdout]      |
[INFO] [stdout] 65   |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1324:47
[INFO] [stdout]      |
[INFO] [stdout] 1324 |         let element_ref = self.get_element_id(element_id)?;
[INFO] [stdout]      |                                -------------- ^^^^^^^^^^ expected `u64`, found `&ElementPath`
[INFO] [stdout]      |                                |
[INFO] [stdout]      |                                arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/session.rs:323:8
[INFO] [stdout]      |
[INFO] [stdout] 323  |     fn get_element_id(&self, uid: UID) -> Result<ElementId, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `Element` found for struct `Arc<RwLock<types::Path>>` in the current scope
[INFO] [stdout]     --> src/local_session/session.rs:1325:32
[INFO] [stdout]      |
[INFO] [stdout] 1325 |         raw_module.notify(Ref::Element(element_ref), event)?;
[INFO] [stdout]      |                                ^^^^^^^ associated item not found in `Arc<RwLock<Path>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `id` found for struct `Arc<RwLock<element::RefElementPath>>` in the current scope
[INFO] [stdout]     --> src/local_session/session.rs:1303:32
[INFO] [stdout]      |
[INFO] [stdout] 1303 |             id: element.ref_id.id(),
[INFO] [stdout]      |                                ^^ method not found in `Arc<RwLock<RefElementPath>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1331:40
[INFO] [stdout]      |
[INFO] [stdout] 1331 |         let element = self.get_element(element_id)?;
[INFO] [stdout]      |                            ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1339:48
[INFO] [stdout]      |
[INFO] [stdout] 1339 |             Event::Element(info, _) => *info = element_id.clone(),
[INFO] [stdout]      |                                        -----   ^^^^^^^^^^^^^^^^^^ expected `ElementId`, found `ElementPath`
[INFO] [stdout]      |                                        |
[INFO] [stdout]      |                                        expected due to the type of this binding
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1308:40
[INFO] [stdout]      |
[INFO] [stdout] 1308 |         let element = self.get_element(element_id)?;
[INFO] [stdout]      |                            ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1352:38
[INFO] [stdout]      |
[INFO] [stdout] 1352 |             let _ = self.get_element(element_id)?;
[INFO] [stdout]      |                          ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |                          |
[INFO] [stdout]      |                          arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1320:44
[INFO] [stdout]      |
[INFO] [stdout] 1320 |             let __module = self.get_module(&module.read()?.index)?;
[INFO] [stdout]      |                                 ---------- ^^^^^^^^^^^^^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&module::ModuleId`
[INFO] [stdout]                 found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:65:8
[INFO] [stdout]      |
[INFO] [stdout] 65   |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1360:51
[INFO] [stdout]      |
[INFO] [stdout] 1360 |         if !events.write()?.subscribe(ID::Element(element_id.clone())) {
[INFO] [stdout]      |                                       ----------- ^^^^^^^^^^^^^^^^^^ expected `ElementId`, found `ElementPath`
[INFO] [stdout]      |                                       |
[INFO] [stdout]      |                                       arguments to this enum variant are incorrect
[INFO] [stdout]      |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]     --> src/types.rs:23:5
[INFO] [stdout]      |
[INFO] [stdout] 23   |     Element(ElementId),
[INFO] [stdout]      |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1324:47
[INFO] [stdout]      |
[INFO] [stdout] 1324 |         let element_ref = self.get_element_id(element_id)?;
[INFO] [stdout]      |                                -------------- ^^^^^^^^^^ expected `u64`, found `&ElementPath`
[INFO] [stdout]      |                                |
[INFO] [stdout]      |                                arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/session.rs:323:8
[INFO] [stdout]      |
[INFO] [stdout] 323  |     fn get_element_id(&self, uid: UID) -> Result<ElementId, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `Element` found for struct `Arc<RwLock<types::Path>>` in the current scope
[INFO] [stdout]     --> src/local_session/session.rs:1325:32
[INFO] [stdout]      |
[INFO] [stdout] 1325 |         raw_module.notify(Ref::Element(element_ref), event)?;
[INFO] [stdout]      |                                ^^^^^^^ associated item not found in `Arc<RwLock<Path>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1370:38
[INFO] [stdout]      |
[INFO] [stdout] 1370 |             let _ = self.get_element(element_id)?;
[INFO] [stdout]      |                          ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |                          |
[INFO] [stdout]      |                          arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1331:40
[INFO] [stdout]      |
[INFO] [stdout] 1331 |         let element = self.get_element(element_id)?;
[INFO] [stdout]      |                            ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1378:53
[INFO] [stdout]      |
[INFO] [stdout] 1378 |         if !events.write()?.unsubscribe(ID::Element(element_id.clone())) {
[INFO] [stdout]      |                                         ----------- ^^^^^^^^^^^^^^^^^^ expected `ElementId`, found `ElementPath`
[INFO] [stdout]      |                                         |
[INFO] [stdout]      |                                         arguments to this enum variant are incorrect
[INFO] [stdout]      |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]     --> src/types.rs:23:5
[INFO] [stdout]      |
[INFO] [stdout] 23   |     Element(ElementId),
[INFO] [stdout]      |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1339:48
[INFO] [stdout]      |
[INFO] [stdout] 1339 |             Event::Element(info, _) => *info = element_id.clone(),
[INFO] [stdout]      |                                        -----   ^^^^^^^^^^^^^^^^^^ expected `ElementId`, found `ElementPath`
[INFO] [stdout]      |                                        |
[INFO] [stdout]      |                                        expected due to the type of this binding
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1391:46
[INFO] [stdout]      |
[INFO] [stdout] 1391 |         let mut uid = self.get_locations_len(location_id)?;
[INFO] [stdout]      |                            ----------------- ^^^^^^^^^^^ expected `u64`, found `&LocationPath`
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/session.rs:231:8
[INFO] [stdout]      |
[INFO] [stdout] 231  |     fn get_locations_len(&self, location_id: UID) -> Result<usize, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1352:38
[INFO] [stdout]      |
[INFO] [stdout] 1352 |             let _ = self.get_element(element_id)?;
[INFO] [stdout]      |                          ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |                          |
[INFO] [stdout]      |                          arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1394:27
[INFO] [stdout]      |
[INFO] [stdout] 1394 |             .get_location(location_id)?
[INFO] [stdout]      |              ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1360:51
[INFO] [stdout]      |
[INFO] [stdout] 1360 |         if !events.write()?.subscribe(ID::Element(element_id.clone())) {
[INFO] [stdout]      |                                       ----------- ^^^^^^^^^^^^^^^^^^ expected `ElementId`, found `ElementPath`
[INFO] [stdout]      |                                       |
[INFO] [stdout]      |                                       arguments to this enum variant are incorrect
[INFO] [stdout]      |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]     --> src/types.rs:23:5
[INFO] [stdout]      |
[INFO] [stdout] 23   |     Element(ElementId),
[INFO] [stdout]      |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1412:38
[INFO] [stdout]      |
[INFO] [stdout] 1412 |         let path = self.get_location(location_id)?.read()?.path.join(name);
[INFO] [stdout]      |                         ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1370:38
[INFO] [stdout]      |
[INFO] [stdout] 1370 |             let _ = self.get_element(element_id)?;
[INFO] [stdout]      |                          ----------- ^^^^^^^^^^ expected `&ElementId`, found `&ElementPath`
[INFO] [stdout]      |                          |
[INFO] [stdout]      |                          arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&element::ElementId`
[INFO] [stdout]                 found reference `&element::ElementPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:64:8
[INFO] [stdout]      |
[INFO] [stdout] 64   |     fn get_element(&self, element_id: &ElementId) -> Result<ERow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1421:21
[INFO] [stdout]      |
[INFO] [stdout] 1421 |             ref_id: location_info.clone(),
[INFO] [stdout]      |                     ^^^^^^^^^^^^^^^^^^^^^ expected `Arc<RwLock<Path>>`, found `Arc<RwLock<RefLocationPath>>`
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected struct `Arc<RwLock<types::Path>>`
[INFO] [stdout]                 found struct `Arc<RwLock<location::RefLocationPath>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1378:53
[INFO] [stdout]      |
[INFO] [stdout] 1378 |         if !events.write()?.unsubscribe(ID::Element(element_id.clone())) {
[INFO] [stdout]      |                                         ----------- ^^^^^^^^^^^^^^^^^^ expected `ElementId`, found `ElementPath`
[INFO] [stdout]      |                                         |
[INFO] [stdout]      |                                         arguments to this enum variant are incorrect
[INFO] [stdout]      |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]     --> src/types.rs:23:5
[INFO] [stdout]      |
[INFO] [stdout] 23   |     Element(ElementId),
[INFO] [stdout]      |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1436:38
[INFO] [stdout]      |
[INFO] [stdout] 1436 |         let dest = self.get_location(location_id)?;
[INFO] [stdout]      |                         ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1391:46
[INFO] [stdout]      |
[INFO] [stdout] 1391 |         let mut uid = self.get_locations_len(location_id)?;
[INFO] [stdout]      |                            ----------------- ^^^^^^^^^^^ expected `u64`, found `&LocationPath`
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/session.rs:231:8
[INFO] [stdout]      |
[INFO] [stdout] 231  |     fn get_locations_len(&self, location_id: UID) -> Result<usize, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1442:31
[INFO] [stdout]      |
[INFO] [stdout] 1442 |             self.get_location(location_id)?
[INFO] [stdout]      |                  ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                  |
[INFO] [stdout]      |                  arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1394:27
[INFO] [stdout]      |
[INFO] [stdout] 1394 |             .get_location(location_id)?
[INFO] [stdout]      |              ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1449:13
[INFO] [stdout]      |
[INFO] [stdout] 1448 |         let _ = self.notify_all(vec![SessionEvent::NewLocation(
[INFO] [stdout]      |                                      ------------------------- arguments to this enum variant are incorrect
[INFO] [stdout] 1449 |             location_info.read()?.id.clone(),
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `LocationId`, found `LocationPath`
[INFO] [stdout]      |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]     --> src/events.rs:17:5
[INFO] [stdout]      |
[INFO] [stdout] 17   |     NewLocation(LocationId),
[INFO] [stdout]      |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1412:38
[INFO] [stdout]      |
[INFO] [stdout] 1412 |         let path = self.get_location(location_id)?.read()?.path.join(name);
[INFO] [stdout]      |                         ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1486:21
[INFO] [stdout]      |
[INFO] [stdout] 1486 |             ref_id: location_ref.clone(),
[INFO] [stdout]      |                     ^^^^^^^^^^^^^^^^^^^^ expected `Arc<RwLock<Path>>`, found `Arc<RwLock<RefLocationPath>>`
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected struct `Arc<RwLock<types::Path>>`
[INFO] [stdout]                 found struct `Arc<RwLock<location::RefLocationPath>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1421:21
[INFO] [stdout]      |
[INFO] [stdout] 1421 |             ref_id: location_info.clone(),
[INFO] [stdout]      |                     ^^^^^^^^^^^^^^^^^^^^^ expected `Arc<RwLock<Path>>`, found `Arc<RwLock<RefLocationPath>>`
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected struct `Arc<RwLock<types::Path>>`
[INFO] [stdout]                 found struct `Arc<RwLock<location::RefLocationPath>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1489:13
[INFO] [stdout]      |
[INFO] [stdout] 1489 |             module,
[INFO] [stdout]      |             ^^^^^^ expected `Option<Arc<RwLock<RefModulePath>>>`, found `Option<ModuleId>`
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected enum `std::option::Option<Arc<RwLock<module::RefModulePath>>>`
[INFO] [stdout]                 found enum `std::option::Option<module::ModuleId>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1436:38
[INFO] [stdout]      |
[INFO] [stdout] 1436 |         let dest = self.get_location(location_id)?;
[INFO] [stdout]      |                         ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `id` on type `RwLockReadGuard<'_, types::Path>`
[INFO] [stdout]     --> src/local_session/session.rs:1526:70
[INFO] [stdout]      |
[INFO] [stdout] 1526 |                     let mut new_id = location.read()?.ref_id.read()?.id.clone();
[INFO] [stdout]      |                                                                      ^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1442:31
[INFO] [stdout]      |
[INFO] [stdout] 1442 |             self.get_location(location_id)?
[INFO] [stdout]      |                  ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                  |
[INFO] [stdout]      |                  arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1547:54
[INFO] [stdout]      |
[INFO] [stdout] 1547 |                           ref_id: Arc::new(RwLock::new(RefLocationPath {
[INFO] [stdout]      |  __________________________________________-----------_^
[INFO] [stdout]      | |                                          |
[INFO] [stdout]      | |                                          arguments to this function are incorrect
[INFO] [stdout] 1548 | |                             id: new_id.clone(),
[INFO] [stdout] 1549 | |                             session: Some(self.c()),
[INFO] [stdout] 1550 | |                         })),
[INFO] [stdout]      | |_________________________^ expected `Path`, found `RefLocationPath`
[INFO] [stdout]      |
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]     --> /rustc/e6e4f7ed1589e03bc2f6c5931c1a72e7947e8682/library/std/src/sync/rwlock.rs:160:18
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `id` on type `RwLockReadGuard<'_, types::Path>`
[INFO] [stdout]     --> src/local_session/session.rs:1575:67
[INFO] [stdout]      |
[INFO] [stdout] 1575 | ...                   let mut old = location.ref_id.read()?.id.clone();
[INFO] [stdout]      |                                                             ^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `id` on type `RwLockWriteGuard<'_, types::Path>`
[INFO] [stdout]     --> src/local_session/session.rs:1582:48
[INFO] [stdout]      |
[INFO] [stdout] 1582 | ...                   let tmp = _ref.id.last_mut().unwrap();
[INFO] [stdout]      |                                      ^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1449:13
[INFO] [stdout]      |
[INFO] [stdout] 1448 |         let _ = self.notify_all(vec![SessionEvent::NewLocation(
[INFO] [stdout]      |                                      ------------------------- arguments to this enum variant are incorrect
[INFO] [stdout] 1449 |             location_info.read()?.id.clone(),
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `LocationId`, found `LocationPath`
[INFO] [stdout]      |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]     --> src/events.rs:17:5
[INFO] [stdout]      |
[INFO] [stdout] 17   |     NewLocation(LocationId),
[INFO] [stdout]      |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1486:21
[INFO] [stdout]      |
[INFO] [stdout] 1486 |             ref_id: location_ref.clone(),
[INFO] [stdout]      |                     ^^^^^^^^^^^^^^^^^^^^ expected `Arc<RwLock<Path>>`, found `Arc<RwLock<RefLocationPath>>`
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected struct `Arc<RwLock<types::Path>>`
[INFO] [stdout]                 found struct `Arc<RwLock<location::RefLocationPath>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1489:13
[INFO] [stdout]      |
[INFO] [stdout] 1489 |             module,
[INFO] [stdout]      |             ^^^^^^ expected `Option<Arc<RwLock<RefModulePath>>>`, found `Option<ModuleId>`
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected enum `std::option::Option<Arc<RwLock<module::RefModulePath>>>`
[INFO] [stdout]                 found enum `std::option::Option<module::ModuleId>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: arguments to this enum variant are incorrect
[INFO] [stdout]     --> src/local_session/session.rs:1598:36
[INFO] [stdout]      |
[INFO] [stdout] 1598 |                 notifications.push(SessionEvent::LocationIdChanged(
[INFO] [stdout]      |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 1599 |                     location_id.clone(),
[INFO] [stdout]      |                     ------------------- expected `LocationId`, found `LocationPath`
[INFO] [stdout] 1600 |                     location_id,
[INFO] [stdout]      |                     ----------- expected `LocationId`, found `LocationPath`
[INFO] [stdout]      |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]     --> src/events.rs:26:5
[INFO] [stdout]      |
[INFO] [stdout] 26   |     LocationIdChanged(LocationId, LocationId),
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `id` on type `RwLockWriteGuard<'_, types::Path>`
[INFO] [stdout]     --> src/local_session/session.rs:1621:35
[INFO] [stdout]      |
[INFO] [stdout] 1621 |                     old_id = info.id.clone();
[INFO] [stdout]      |                                   ^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `id` on type `RwLockReadGuard<'_, types::Path>`
[INFO] [stdout]     --> src/local_session/session.rs:1526:70
[INFO] [stdout]      |
[INFO] [stdout] 1526 |                     let mut new_id = location.read()?.ref_id.read()?.id.clone();
[INFO] [stdout]      |                                                                      ^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `id` on type `RwLockWriteGuard<'_, types::Path>`
[INFO] [stdout]     --> src/local_session/session.rs:1622:26
[INFO] [stdout]      |
[INFO] [stdout] 1622 |                     info.id.push(new_id);
[INFO] [stdout]      |                          ^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `id` on type `RwLockWriteGuard<'_, types::Path>`
[INFO] [stdout]     --> src/local_session/session.rs:1646:26
[INFO] [stdout]      |
[INFO] [stdout] 1646 |                     info.id.clone()
[INFO] [stdout]      |                          ^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1547:54
[INFO] [stdout]      |
[INFO] [stdout] 1547 |                           ref_id: Arc::new(RwLock::new(RefLocationPath {
[INFO] [stdout]      |  __________________________________________-----------_^
[INFO] [stdout]      | |                                          |
[INFO] [stdout]      | |                                          arguments to this function are incorrect
[INFO] [stdout] 1548 | |                             id: new_id.clone(),
[INFO] [stdout] 1549 | |                             session: Some(self.c()),
[INFO] [stdout] 1550 | |                         })),
[INFO] [stdout]      | |_________________________^ expected `Path`, found `RefLocationPath`
[INFO] [stdout]      |
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]     --> /rustc/e6e4f7ed1589e03bc2f6c5931c1a72e7947e8682/library/std/src/sync/rwlock.rs:160:18
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `id` on type `RwLockWriteGuard<'_, types::Path>`
[INFO] [stdout]     --> src/local_session/session.rs:1634:45
[INFO] [stdout]      |
[INFO] [stdout] 1634 | ...                   let old_id = id.id.clone();
[INFO] [stdout]      |                                       ^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `id` on type `RwLockWriteGuard<'_, types::Path>`
[INFO] [stdout]     --> src/local_session/session.rs:1635:42
[INFO] [stdout]      |
[INFO] [stdout] 1635 | ...                   let len = id.id.len();
[INFO] [stdout]      |                                    ^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `id` on type `RwLockWriteGuard<'_, types::Path>`
[INFO] [stdout]     --> src/local_session/session.rs:1636:32
[INFO] [stdout]      |
[INFO] [stdout] 1636 | ...                   id.id.insert(len - depth, new_id);
[INFO] [stdout]      |                          ^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `id` on type `RwLockWriteGuard<'_, types::Path>`
[INFO] [stdout]     --> src/local_session/session.rs:1638:45
[INFO] [stdout]      |
[INFO] [stdout] 1638 | ...                   let new_id = id.id.clone();
[INFO] [stdout]      |                                       ^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `id` on type `RwLockReadGuard<'_, types::Path>`
[INFO] [stdout]     --> src/local_session/session.rs:1575:67
[INFO] [stdout]      |
[INFO] [stdout] 1575 | ...                   let mut old = location.ref_id.read()?.id.clone();
[INFO] [stdout]      |                                                             ^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `id` on type `RwLockWriteGuard<'_, types::Path>`
[INFO] [stdout]     --> src/local_session/session.rs:1582:48
[INFO] [stdout]      |
[INFO] [stdout] 1582 | ...                   let tmp = _ref.id.last_mut().unwrap();
[INFO] [stdout]      |                                      ^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1676:30
[INFO] [stdout]      |
[INFO] [stdout] 1676 |         Ok(self.get_location(location_id)?.read()?.locations.len())
[INFO] [stdout]      |                 ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1685:42
[INFO] [stdout]      |
[INFO] [stdout] 1685 |         let location = self.get_location(location_id)?;
[INFO] [stdout]      |                             ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: arguments to this enum variant are incorrect
[INFO] [stdout]     --> src/local_session/session.rs:1598:36
[INFO] [stdout]      |
[INFO] [stdout] 1598 |                 notifications.push(SessionEvent::LocationIdChanged(
[INFO] [stdout]      |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 1599 |                     location_id.clone(),
[INFO] [stdout]      |                     ------------------- expected `LocationId`, found `LocationPath`
[INFO] [stdout] 1600 |                     location_id,
[INFO] [stdout]      |                     ----------- expected `LocationId`, found `LocationPath`
[INFO] [stdout]      |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]     --> src/events.rs:26:5
[INFO] [stdout]      |
[INFO] [stdout] 26   |     LocationIdChanged(LocationId, LocationId),
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `id` on type `RwLockWriteGuard<'_, types::Path>`
[INFO] [stdout]     --> src/local_session/session.rs:1621:35
[INFO] [stdout]      |
[INFO] [stdout] 1621 |                     old_id = info.id.clone();
[INFO] [stdout]      |                                   ^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `id` on type `RwLockWriteGuard<'_, types::Path>`
[INFO] [stdout]     --> src/local_session/session.rs:1622:26
[INFO] [stdout]      |
[INFO] [stdout] 1622 |                     info.id.push(new_id);
[INFO] [stdout]      |                          ^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `id` on type `RwLockWriteGuard<'_, types::Path>`
[INFO] [stdout]     --> src/local_session/session.rs:1646:26
[INFO] [stdout]      |
[INFO] [stdout] 1646 |                     info.id.clone()
[INFO] [stdout]      |                          ^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1689:12
[INFO] [stdout]      |
[INFO] [stdout] 1687 |             location_infos.push(loc.read()?.ref_id.clone());
[INFO] [stdout]      |             --------------      -------------------------- this argument has type `Arc<RwLock<types::Path>>`...
[INFO] [stdout]      |             |
[INFO] [stdout]      |             ... which causes `location_infos` to have type `std::vec::Vec<Arc<RwLock<types::Path>>>`
[INFO] [stdout] 1688 |         }
[INFO] [stdout] 1689 |         Ok(location_infos)
[INFO] [stdout]      |         -- ^^^^^^^^^^^^^^ expected `Vec<Arc<RwLock<RefLocationPath>>>`, found `Vec<Arc<RwLock<Path>>>`
[INFO] [stdout]      |         |
[INFO] [stdout]      |         arguments to this enum variant are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected struct `std::vec::Vec<Arc<RwLock<location::RefLocationPath>>>`
[INFO] [stdout]                 found struct `std::vec::Vec<Arc<RwLock<types::Path>>>`
[INFO] [stdout] help: the type constructed contains `std::vec::Vec<Arc<RwLock<types::Path>>>` due to the type of the argument passed
[INFO] [stdout]     --> src/local_session/session.rs:1689:9
[INFO] [stdout]      |
[INFO] [stdout] 1689 |         Ok(location_infos)
[INFO] [stdout]      |         ^^^--------------^
[INFO] [stdout]      |            |
[INFO] [stdout]      |            this argument influences the type of `Ok`
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]     --> /rustc/e6e4f7ed1589e03bc2f6c5931c1a72e7947e8682/library/core/src/result.rs:506:5
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `id` on type `RwLockWriteGuard<'_, types::Path>`
[INFO] [stdout]     --> src/local_session/session.rs:1634:45
[INFO] [stdout]      |
[INFO] [stdout] 1634 | ...                   let old_id = id.id.clone();
[INFO] [stdout]      |                                       ^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `id` on type `RwLockWriteGuard<'_, types::Path>`
[INFO] [stdout]     --> src/local_session/session.rs:1635:42
[INFO] [stdout]      |
[INFO] [stdout] 1635 | ...                   let len = id.id.len();
[INFO] [stdout]      |                                    ^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `id` on type `RwLockWriteGuard<'_, types::Path>`
[INFO] [stdout]     --> src/local_session/session.rs:1636:32
[INFO] [stdout]      |
[INFO] [stdout] 1636 | ...                   id.id.insert(len - depth, new_id);
[INFO] [stdout]      |                          ^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `id` on type `RwLockWriteGuard<'_, types::Path>`
[INFO] [stdout]     --> src/local_session/session.rs:1638:45
[INFO] [stdout]      |
[INFO] [stdout] 1638 | ...                   let new_id = id.id.clone();
[INFO] [stdout]      |                                       ^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1693:38
[INFO] [stdout]      |
[INFO] [stdout] 1693 |         let _ = self.get_location_id(&location_id)?;
[INFO] [stdout]      |                      --------------- ^^^^^^^^^^^^ expected `u64`, found `&LocationPath`
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/session.rs:324:8
[INFO] [stdout]      |
[INFO] [stdout] 324  |     fn get_location_id(&self, uid: UID) -> Result<LocationId, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1676:30
[INFO] [stdout]      |
[INFO] [stdout] 1676 |         Ok(self.get_location(location_id)?.read()?.locations.len())
[INFO] [stdout]      |                 ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1694:70
[INFO] [stdout]      |
[INFO] [stdout] 1694 |         let _ = self.notify_all(vec![SessionEvent::DestroyedLocation(location_id.clone())]);
[INFO] [stdout]      |                                      ------------------------------- ^^^^^^^^^^^^^^^^^^^ expected `LocationId`, found `LocationPath`
[INFO] [stdout]      |                                      |
[INFO] [stdout]      |                                      arguments to this enum variant are incorrect
[INFO] [stdout]      |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]     --> src/events.rs:21:5
[INFO] [stdout]      |
[INFO] [stdout] 21   |     DestroyedLocation(LocationId),
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1685:42
[INFO] [stdout]      |
[INFO] [stdout] 1685 |         let location = self.get_location(location_id)?;
[INFO] [stdout]      |                             ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1698:53
[INFO] [stdout]      |
[INFO] [stdout] 1698 |             let parent_location = self.get_location(&location_uid)?;
[INFO] [stdout]      |                                        ------------ ^^^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                                        |
[INFO] [stdout]      |                                        arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1689:12
[INFO] [stdout]      |
[INFO] [stdout] 1687 |             location_infos.push(loc.read()?.ref_id.clone());
[INFO] [stdout]      |             --------------      -------------------------- this argument has type `Arc<RwLock<types::Path>>`...
[INFO] [stdout]      |             |
[INFO] [stdout]      |             ... which causes `location_infos` to have type `std::vec::Vec<Arc<RwLock<types::Path>>>`
[INFO] [stdout] 1688 |         }
[INFO] [stdout] 1689 |         Ok(location_infos)
[INFO] [stdout]      |         -- ^^^^^^^^^^^^^^ expected `Vec<Arc<RwLock<RefLocationPath>>>`, found `Vec<Arc<RwLock<Path>>>`
[INFO] [stdout]      |         |
[INFO] [stdout]      |         arguments to this enum variant are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected struct `std::vec::Vec<Arc<RwLock<location::RefLocationPath>>>`
[INFO] [stdout]                 found struct `std::vec::Vec<Arc<RwLock<types::Path>>>`
[INFO] [stdout] help: the type constructed contains `std::vec::Vec<Arc<RwLock<types::Path>>>` due to the type of the argument passed
[INFO] [stdout]     --> src/local_session/session.rs:1689:9
[INFO] [stdout]      |
[INFO] [stdout] 1689 |         Ok(location_infos)
[INFO] [stdout]      |         ^^^--------------^
[INFO] [stdout]      |            |
[INFO] [stdout]      |            this argument influences the type of `Ok`
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]     --> /rustc/e6e4f7ed1589e03bc2f6c5931c1a72e7947e8682/library/core/src/result.rs:506:5
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1693:38
[INFO] [stdout]      |
[INFO] [stdout] 1693 |         let _ = self.get_location_id(&location_id)?;
[INFO] [stdout]      |                      --------------- ^^^^^^^^^^^^ expected `u64`, found `&LocationPath`
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/session.rs:324:8
[INFO] [stdout]      |
[INFO] [stdout] 324  |     fn get_location_id(&self, uid: UID) -> Result<LocationId, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `id` found for struct `Arc<RwLock<types::Path>>` in the current scope
[INFO] [stdout]     --> src/local_session/session.rs:1710:33
[INFO] [stdout]      |
[INFO] [stdout] 1710 |                 let last = info.id();
[INFO] [stdout]      |                                 ^^ method not found in `Arc<RwLock<Path>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `id` on type `RwLockWriteGuard<'_, types::Path>`
[INFO] [stdout]     --> src/local_session/session.rs:1714:31
[INFO] [stdout]      |
[INFO] [stdout] 1714 |                 info.write()?.id = new.clone();
[INFO] [stdout]      |                               ^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1694:70
[INFO] [stdout]      |
[INFO] [stdout] 1694 |         let _ = self.notify_all(vec![SessionEvent::DestroyedLocation(location_id.clone())]);
[INFO] [stdout]      |                                      ------------------------------- ^^^^^^^^^^^^^^^^^^^ expected `LocationId`, found `LocationPath`
[INFO] [stdout]      |                                      |
[INFO] [stdout]      |                                      arguments to this enum variant are incorrect
[INFO] [stdout]      |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]     --> src/events.rs:21:5
[INFO] [stdout]      |
[INFO] [stdout] 21   |     DestroyedLocation(LocationId),
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1698:53
[INFO] [stdout]      |
[INFO] [stdout] 1698 |             let parent_location = self.get_location(&location_uid)?;
[INFO] [stdout]      |                                        ------------ ^^^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                                        |
[INFO] [stdout]      |                                        arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `push` found for type `u64` in the current scope
[INFO] [stdout]     --> src/local_session/session.rs:1739:13
[INFO] [stdout]      |
[INFO] [stdout] 1739 |         new.push(self.get_locations_len(to)? as u64);
[INFO] [stdout]      |             ^^^^ method not found in `u64`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `id` on type `RwLockReadGuard<'_, types::Path>`
[INFO] [stdout]     --> src/local_session/session.rs:1741:33
[INFO] [stdout]      |
[INFO] [stdout] 1741 |         let last = info.read()?.id.clone();
[INFO] [stdout]      |                                 ^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `id` on type `RwLockWriteGuard<'_, types::Path>`
[INFO] [stdout]     --> src/local_session/session.rs:1742:43
[INFO] [stdout]      |
[INFO] [stdout] 1742 |         location.write()?.ref_id.write()?.id = new.clone();
[INFO] [stdout]      |                                           ^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `id` found for struct `Arc<RwLock<types::Path>>` in the current scope
[INFO] [stdout]     --> src/local_session/session.rs:1710:33
[INFO] [stdout]      |
[INFO] [stdout] 1710 |                 let last = info.id();
[INFO] [stdout]      |                                 ^^ method not found in `Arc<RwLock<Path>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `id` on type `RwLockWriteGuard<'_, types::Path>`
[INFO] [stdout]     --> src/local_session/session.rs:1714:31
[INFO] [stdout]      |
[INFO] [stdout] 1714 |                 info.write()?.id = new.clone();
[INFO] [stdout]      |                               ^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1743:27
[INFO] [stdout]      |
[INFO] [stdout] 1743 |         self.get_location(to)?
[INFO] [stdout]      |              ------------ ^^ expected `&LocationId`, found `u64`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1748:76
[INFO] [stdout]      |
[INFO] [stdout] 1748 |         let _ = self.notify_all(vec![SessionEvent::LocationIdChanged(last, new)]);
[INFO] [stdout]      |                                      -------------------------------       ^^^ expected `LocationId`, found `u64`
[INFO] [stdout]      |                                      |
[INFO] [stdout]      |                                      arguments to this enum variant are incorrect
[INFO] [stdout]      |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]     --> src/events.rs:26:5
[INFO] [stdout]      |
[INFO] [stdout] 26   |     LocationIdChanged(LocationId, LocationId),
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `push` found for type `u64` in the current scope
[INFO] [stdout]     --> src/local_session/session.rs:1739:13
[INFO] [stdout]      |
[INFO] [stdout] 1739 |         new.push(self.get_locations_len(to)? as u64);
[INFO] [stdout]      |             ^^^^ method not found in `u64`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1754:30
[INFO] [stdout]      |
[INFO] [stdout] 1754 |         Ok(self.get_location(location_id)?.read()?.name.clone())
[INFO] [stdout]      |                 ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `id` on type `RwLockReadGuard<'_, types::Path>`
[INFO] [stdout]     --> src/local_session/session.rs:1741:33
[INFO] [stdout]      |
[INFO] [stdout] 1741 |         let last = info.read()?.id.clone();
[INFO] [stdout]      |                                 ^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `id` on type `RwLockWriteGuard<'_, types::Path>`
[INFO] [stdout]     --> src/local_session/session.rs:1742:43
[INFO] [stdout]      |
[INFO] [stdout] 1742 |         location.write()?.ref_id.write()?.id = new.clone();
[INFO] [stdout]      |                                           ^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1762:27
[INFO] [stdout]      |
[INFO] [stdout] 1762 |         self.get_location(location_id)?.write()?.name = name.to_owned();
[INFO] [stdout]      |              ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1743:27
[INFO] [stdout]      |
[INFO] [stdout] 1743 |         self.get_location(to)?
[INFO] [stdout]      |              ------------ ^^ expected `&LocationId`, found `u64`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1748:76
[INFO] [stdout]      |
[INFO] [stdout] 1748 |         let _ = self.notify_all(vec![SessionEvent::LocationIdChanged(last, new)]);
[INFO] [stdout]      |                                      -------------------------------       ^^^ expected `LocationId`, found `u64`
[INFO] [stdout]      |                                      |
[INFO] [stdout]      |                                      arguments to this enum variant are incorrect
[INFO] [stdout]      |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]     --> src/events.rs:26:5
[INFO] [stdout]      |
[INFO] [stdout] 26   |     LocationIdChanged(LocationId, LocationId),
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1767:30
[INFO] [stdout]      |
[INFO] [stdout] 1767 |         Ok(self.get_location(location_id)?.read()?.desc.clone())
[INFO] [stdout]      |                 ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1754:30
[INFO] [stdout]      |
[INFO] [stdout] 1754 |         Ok(self.get_location(location_id)?.read()?.name.clone())
[INFO] [stdout]      |                 ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1775:27
[INFO] [stdout]      |
[INFO] [stdout] 1775 |         self.get_location(location_id)?.write()?.desc = desc.to_owned();
[INFO] [stdout]      |              ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1762:27
[INFO] [stdout]      |
[INFO] [stdout] 1762 |         self.get_location(location_id)?.write()?.name = name.to_owned();
[INFO] [stdout]      |              ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1780:30
[INFO] [stdout]      |
[INFO] [stdout] 1780 |         Ok(self.get_location(location_id)?.read()?.path.clone())
[INFO] [stdout]      |                 ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1767:30
[INFO] [stdout]      |
[INFO] [stdout] 1767 |         Ok(self.get_location(location_id)?.read()?.desc.clone())
[INFO] [stdout]      |                 ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1788:27
[INFO] [stdout]      |
[INFO] [stdout] 1788 |         self.get_location(location_id)?.write()?.path = path;
[INFO] [stdout]      |              ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1775:27
[INFO] [stdout]      |
[INFO] [stdout] 1775 |         self.get_location(location_id)?.write()?.desc = desc.to_owned();
[INFO] [stdout]      |              ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1796:30
[INFO] [stdout]      |
[INFO] [stdout] 1796 |         Ok(self.get_location(location_id)?.read()?.where_is.clone())
[INFO] [stdout]      |                 ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1780:30
[INFO] [stdout]      |
[INFO] [stdout] 1780 |         Ok(self.get_location(location_id)?.read()?.path.clone())
[INFO] [stdout]      |                 ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1804:27
[INFO] [stdout]      |
[INFO] [stdout] 1804 |         self.get_location(location_id)?.write()?.where_is = where_is;
[INFO] [stdout]      |              ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1788:27
[INFO] [stdout]      |
[INFO] [stdout] 1788 |         self.get_location(location_id)?.write()?.path = path;
[INFO] [stdout]      |              ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1809:30
[INFO] [stdout]      |
[INFO] [stdout] 1809 |         Ok(self.get_location(location_id)?.read()?.should_save)
[INFO] [stdout]      |                 ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1796:30
[INFO] [stdout]      |
[INFO] [stdout] 1796 |         Ok(self.get_location(location_id)?.read()?.where_is.clone())
[INFO] [stdout]      |                 ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1817:27
[INFO] [stdout]      |
[INFO] [stdout] 1817 |         self.get_location(location_id)?.write()?.should_save = should_save;
[INFO] [stdout]      |              ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1804:27
[INFO] [stdout]      |
[INFO] [stdout] 1804 |         self.get_location(location_id)?.write()?.where_is = where_is;
[INFO] [stdout]      |              ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1809:30
[INFO] [stdout]      |
[INFO] [stdout] 1809 |         Ok(self.get_location(location_id)?.read()?.should_save)
[INFO] [stdout]      |                 ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1822:30
[INFO] [stdout]      |
[INFO] [stdout] 1822 |         Ok(self.get_location(location_id)?.read()?.elements.len())
[INFO] [stdout]      |                 ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1817:27
[INFO] [stdout]      |
[INFO] [stdout] 1817 |         self.get_location(location_id)?.write()?.should_save = should_save;
[INFO] [stdout]      |              ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1831:42
[INFO] [stdout]      |
[INFO] [stdout] 1831 |         for element in self.get_location(location_id)?.read()?.elements[range]
[INFO] [stdout]      |                             ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1822:30
[INFO] [stdout]      |
[INFO] [stdout] 1822 |         Ok(self.get_location(location_id)?.read()?.elements.len())
[INFO] [stdout]      |                 ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1831:42
[INFO] [stdout]      |
[INFO] [stdout] 1831 |         for element in self.get_location(location_id)?.read()?.elements[range]
[INFO] [stdout]      |                             ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1844:30
[INFO] [stdout]      |
[INFO] [stdout] 1844 |         Ok(self.get_location(location_id)?.read()?.module.clone())
[INFO] [stdout]      |                 ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1844:30
[INFO] [stdout]      |
[INFO] [stdout] 1844 |         Ok(self.get_location(location_id)?.read()?.module.clone())
[INFO] [stdout]      |                 ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1852:27
[INFO] [stdout]      |
[INFO] [stdout] 1852 |         self.get_location(location_id)?.write()?.module = if let Some(module_id) = module_id {
[INFO] [stdout]      |              ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1852:27
[INFO] [stdout]      |
[INFO] [stdout] 1852 |         self.get_location(location_id)?.write()?.module = if let Some(module_id) = module_id {
[INFO] [stdout]      |              ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1853:37
[INFO] [stdout]      |
[INFO] [stdout] 1853 |             Some(self.get_module_id(&module_id)?)
[INFO] [stdout]      |                       ------------- ^^^^^^^^^^ expected `u64`, found `&ModulePath`
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/session.rs:322:8
[INFO] [stdout]      |
[INFO] [stdout] 322  |     fn get_module_id(&self, uid: UID) -> Result<ModuleId, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1853:37
[INFO] [stdout]      |
[INFO] [stdout] 1853 |             Some(self.get_module_id(&module_id)?)
[INFO] [stdout]      |                       ------------- ^^^^^^^^^^ expected `u64`, found `&ModulePath`
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/session.rs:322:8
[INFO] [stdout]      |
[INFO] [stdout] 322  |     fn get_module_id(&self, uid: UID) -> Result<ModuleId, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: `?` operator has incompatible types
[INFO] [stdout]     --> src/local_session/session.rs:1853:18
[INFO] [stdout]      |
[INFO] [stdout] 1853 |             Some(self.get_module_id(&module_id)?)
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Arc<RwLock<RefModulePath>>`, found `ModuleId`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `?` operator cannot convert from `module::ModuleId` to `Arc<RwLock<module::RefModulePath>>`
[INFO] [stdout]      = note: expected struct `Arc<RwLock<module::RefModulePath>>`
[INFO] [stdout]                 found struct `module::ModuleId`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: `?` operator has incompatible types
[INFO] [stdout]     --> src/local_session/session.rs:1853:18
[INFO] [stdout]      |
[INFO] [stdout] 1853 |             Some(self.get_module_id(&module_id)?)
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Arc<RwLock<RefModulePath>>`, found `ModuleId`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `?` operator cannot convert from `module::ModuleId` to `Arc<RwLock<module::RefModulePath>>`
[INFO] [stdout]      = note: expected struct `Arc<RwLock<module::RefModulePath>>`
[INFO] [stdout]                 found struct `module::ModuleId`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1862:30
[INFO] [stdout]      |
[INFO] [stdout] 1862 |         Ok(self.get_location(location_id)?.read()?.settings.clone())
[INFO] [stdout]      |                 ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1862:30
[INFO] [stdout]      |
[INFO] [stdout] 1862 |         Ok(self.get_location(location_id)?.read()?.settings.clone())
[INFO] [stdout]      |                 ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1870:27
[INFO] [stdout]      |
[INFO] [stdout] 1870 |         self.get_location(location_id)?.write()?.settings = data;
[INFO] [stdout]      |              ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1870:27
[INFO] [stdout]      |
[INFO] [stdout] 1870 |         self.get_location(location_id)?.write()?.settings = data;
[INFO] [stdout]      |              ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1879:27
[INFO] [stdout]      |
[INFO] [stdout] 1879 |             .get_location(location_id)?
[INFO] [stdout]      |              ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1879:27
[INFO] [stdout]      |
[INFO] [stdout] 1879 |             .get_location(location_id)?
[INFO] [stdout]      |              ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1894:27
[INFO] [stdout]      |
[INFO] [stdout] 1894 |         self.get_location(location_id)?.write()?.module_settings = data;
[INFO] [stdout]      |              ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1894:27
[INFO] [stdout]      |
[INFO] [stdout] 1894 |         self.get_location(location_id)?.write()?.module_settings = data;
[INFO] [stdout]      |              ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1902:30
[INFO] [stdout]      |
[INFO] [stdout] 1902 |         Ok(self.get_location(location_id)?.read()?.statuses.clone())
[INFO] [stdout]      |                 ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1910:27
[INFO] [stdout]      |
[INFO] [stdout] 1910 |         self.get_location(location_id)?.write()?.statuses = statuses;
[INFO] [stdout]      |              ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1902:30
[INFO] [stdout]      |
[INFO] [stdout] 1902 |         Ok(self.get_location(location_id)?.read()?.statuses.clone())
[INFO] [stdout]      |                 ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1915:30
[INFO] [stdout]      |
[INFO] [stdout] 1915 |         Ok(self.get_location(location_id)?.read()?.status)
[INFO] [stdout]      |                 ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1910:27
[INFO] [stdout]      |
[INFO] [stdout] 1910 |         self.get_location(location_id)?.write()?.statuses = statuses;
[INFO] [stdout]      |              ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1923:27
[INFO] [stdout]      |
[INFO] [stdout] 1923 |         self.get_location(location_id)?.write()?.status = status;
[INFO] [stdout]      |              ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1915:30
[INFO] [stdout]      |
[INFO] [stdout] 1915 |         Ok(self.get_location(location_id)?.read()?.status)
[INFO] [stdout]      |                 ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1928:30
[INFO] [stdout]      |
[INFO] [stdout] 1928 |         Ok(self.get_location(location_id)?.read()?.progress)
[INFO] [stdout]      |                 ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1936:27
[INFO] [stdout]      |
[INFO] [stdout] 1936 |         self.get_location(location_id)?.write()?.progress = progress;
[INFO] [stdout]      |              ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1923:27
[INFO] [stdout]      |
[INFO] [stdout] 1923 |         self.get_location(location_id)?.write()?.status = status;
[INFO] [stdout]      |              ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1941:30
[INFO] [stdout]      |
[INFO] [stdout] 1941 |         Ok(self.get_location(location_id)?.read()?.enabled)
[INFO] [stdout]      |                 ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1928:30
[INFO] [stdout]      |
[INFO] [stdout] 1928 |         Ok(self.get_location(location_id)?.read()?.progress)
[INFO] [stdout]      |                 ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1954:30
[INFO] [stdout]      |
[INFO] [stdout] 1954 |         Ok(self.get_location(location_id)?.read()?.is_error)
[INFO] [stdout]      |                 ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1936:27
[INFO] [stdout]      |
[INFO] [stdout] 1936 |         self.get_location(location_id)?.write()?.progress = progress;
[INFO] [stdout]      |              ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |              |
[INFO] [stdout]      |              arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1968:50
[INFO] [stdout]      |
[INFO] [stdout] 1968 |                 let location = self.get_location(location_id)?;
[INFO] [stdout]      |                                     ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1941:30
[INFO] [stdout]      |
[INFO] [stdout] 1941 |         Ok(self.get_location(location_id)?.read()?.enabled)
[INFO] [stdout]      |                 ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1976:48
[INFO] [stdout]      |
[INFO] [stdout] 1976 |                 let __module = self.get_module(&__module.read()?.index)?;
[INFO] [stdout]      |                                     ---------- ^^^^^^^^^^^^^^^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&module::ModuleId`
[INFO] [stdout]                 found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:65:8
[INFO] [stdout]      |
[INFO] [stdout] 65   |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1954:30
[INFO] [stdout]      |
[INFO] [stdout] 1954 |         Ok(self.get_location(location_id)?.read()?.is_error)
[INFO] [stdout]      |                 ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1968:50
[INFO] [stdout]      |
[INFO] [stdout] 1968 |                 let location = self.get_location(location_id)?;
[INFO] [stdout]      |                                     ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `id` found for struct `Arc<RwLock<types::Path>>` in the current scope
[INFO] [stdout]     --> src/local_session/session.rs:1985:41
[INFO] [stdout]      |
[INFO] [stdout] 1985 |                     id: __module.ref_id.id(),
[INFO] [stdout]      |                                         ^^ method not found in `Arc<RwLock<Path>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1976:48
[INFO] [stdout]      |
[INFO] [stdout] 1976 |                 let __module = self.get_module(&__module.read()?.index)?;
[INFO] [stdout]      |                                     ---------- ^^^^^^^^^^^^^^^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&module::ModuleId`
[INFO] [stdout]                 found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:65:8
[INFO] [stdout]      |
[INFO] [stdout] 65   |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1998:54
[INFO] [stdout]      |
[INFO] [stdout] 1998 |             let len = self.location_get_elements_len(location_id)?;
[INFO] [stdout]      |                            ------------------------- ^^^^^^^^^^^ expected `u64`, found `&LocationPath`
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/session.rs:264:8
[INFO] [stdout]      |
[INFO] [stdout] 264  |     fn location_get_elements_len(&self, location_id: UID) -> Result<usize, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1999:57
[INFO] [stdout]      |
[INFO] [stdout] 1999 |             let __elements = self.location_get_elements(location_id, 0..len)?;
[INFO] [stdout]      |                                   --------------------- ^^^^^^^^^^^ expected `u64`, found `&LocationPath`
[INFO] [stdout]      |                                   |
[INFO] [stdout]      |                                   arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/session.rs:265:8
[INFO] [stdout]      |
[INFO] [stdout] 265  |     fn location_get_elements(
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `id` found for struct `Arc<RwLock<types::Path>>` in the current scope
[INFO] [stdout]     --> src/local_session/session.rs:1985:41
[INFO] [stdout]      |
[INFO] [stdout] 1985 |                     id: __module.ref_id.id(),
[INFO] [stdout]      |                                         ^^ method not found in `Arc<RwLock<Path>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1998:54
[INFO] [stdout]      |
[INFO] [stdout] 1998 |             let len = self.location_get_elements_len(location_id)?;
[INFO] [stdout]      |                            ------------------------- ^^^^^^^^^^^ expected `u64`, found `&LocationPath`
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/session.rs:264:8
[INFO] [stdout]      |
[INFO] [stdout] 264  |     fn location_get_elements_len(&self, location_id: UID) -> Result<usize, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `get_element_info` found for struct `Arc<RwLock<element::RefElementPath>>` in the current scope
[INFO] [stdout]     --> src/local_session/session.rs:2001:36
[INFO] [stdout]      |
[INFO] [stdout] 2001 |                 let info = element.get_element_info()?;
[INFO] [stdout]      |                                    ^^^^^^^^^^^^^^^^ method not found in `Arc<RwLock<RefElementPath>>`
[INFO] [stdout]      |
[INFO] [stdout]      = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout] note: `element::TElement` defines an item `get_element_info`, perhaps you need to implement it
[INFO] [stdout]     --> src/element.rs:113:1
[INFO] [stdout]      |
[INFO] [stdout] 113  | pub trait TElement {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:1999:57
[INFO] [stdout]      |
[INFO] [stdout] 1999 |             let __elements = self.location_get_elements(location_id, 0..len)?;
[INFO] [stdout]      |                                   --------------------- ^^^^^^^^^^^ expected `u64`, found `&LocationPath`
[INFO] [stdout]      |                                   |
[INFO] [stdout]      |                                   arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/session.rs:265:8
[INFO] [stdout]      |
[INFO] [stdout] 265  |     fn location_get_elements(
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:2008:46
[INFO] [stdout]      |
[INFO] [stdout] 2008 |             let len = self.get_locations_len(location_id)?;
[INFO] [stdout]      |                            ----------------- ^^^^^^^^^^^ expected `u64`, found `&LocationPath`
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/session.rs:231:8
[INFO] [stdout]      |
[INFO] [stdout] 231  |     fn get_locations_len(&self, location_id: UID) -> Result<usize, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:2009:50
[INFO] [stdout]      |
[INFO] [stdout] 2009 |             let __locations = self.get_locations(location_id, 0..len)?;
[INFO] [stdout]      |                                    ------------- ^^^^^^^^^^^ expected `u64`, found `&LocationPath`
[INFO] [stdout]      |                                    |
[INFO] [stdout]      |                                    arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/session.rs:232:8
[INFO] [stdout]      |
[INFO] [stdout] 232  |     fn get_locations(
[INFO] [stdout]      |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `get_element_info` found for struct `Arc<RwLock<element::RefElementPath>>` in the current scope
[INFO] [stdout]     --> src/local_session/session.rs:2001:36
[INFO] [stdout]      |
[INFO] [stdout] 2001 |                 let info = element.get_element_info()?;
[INFO] [stdout]      |                                    ^^^^^^^^^^^^^^^^ method not found in `Arc<RwLock<RefElementPath>>`
[INFO] [stdout]      |
[INFO] [stdout]      = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout] note: `element::TElement` defines an item `get_element_info`, perhaps you need to implement it
[INFO] [stdout]     --> src/element.rs:113:1
[INFO] [stdout]      |
[INFO] [stdout] 113  | pub trait TElement {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `get_location_info` found for struct `Arc<RwLock<location::RefLocationPath>>` in the current scope
[INFO] [stdout]     --> src/local_session/session.rs:2011:37
[INFO] [stdout]      |
[INFO] [stdout] 2011 |                 let info = location.get_location_info()?;
[INFO] [stdout]      |                                     ^^^^^^^^^^^^^^^^^ method not found in `Arc<RwLock<RefLocationPath>>`
[INFO] [stdout]      |
[INFO] [stdout]      = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout] note: `location::TLocation` defines an item `get_location_info`, perhaps you need to implement it
[INFO] [stdout]     --> src/location.rs:426:1
[INFO] [stdout]      |
[INFO] [stdout] 426  | pub trait TLocation {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:2008:46
[INFO] [stdout]      |
[INFO] [stdout] 2008 |             let len = self.get_locations_len(location_id)?;
[INFO] [stdout]      |                            ----------------- ^^^^^^^^^^^ expected `u64`, found `&LocationPath`
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/session.rs:231:8
[INFO] [stdout]      |
[INFO] [stdout] 231  |     fn get_locations_len(&self, location_id: UID) -> Result<usize, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:2016:42
[INFO] [stdout]      |
[INFO] [stdout] 2016 |         let location = self.get_location(location_id)?;
[INFO] [stdout]      |                             ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:2009:50
[INFO] [stdout]      |
[INFO] [stdout] 2009 |             let __locations = self.get_locations(location_id, 0..len)?;
[INFO] [stdout]      |                                    ------------- ^^^^^^^^^^^ expected `u64`, found `&LocationPath`
[INFO] [stdout]      |                                    |
[INFO] [stdout]      |                                    arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/session.rs:232:8
[INFO] [stdout]      |
[INFO] [stdout] 232  |     fn get_locations(
[INFO] [stdout]      |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `id` found for struct `Arc<RwLock<types::Path>>` in the current scope
[INFO] [stdout]     --> src/local_session/session.rs:2022:33
[INFO] [stdout]      |
[INFO] [stdout] 2022 |             id: location.ref_id.id(),
[INFO] [stdout]      |                                 ^^ method not found in `Arc<RwLock<Path>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `get_location_info` found for struct `Arc<RwLock<location::RefLocationPath>>` in the current scope
[INFO] [stdout]     --> src/local_session/session.rs:2011:37
[INFO] [stdout]      |
[INFO] [stdout] 2011 |                 let info = location.get_location_info()?;
[INFO] [stdout]      |                                     ^^^^^^^^^^^^^^^^^ method not found in `Arc<RwLock<RefLocationPath>>`
[INFO] [stdout]      |
[INFO] [stdout]      = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout] note: `location::TLocation` defines an item `get_location_info`, perhaps you need to implement it
[INFO] [stdout]     --> src/location.rs:426:1
[INFO] [stdout]      |
[INFO] [stdout] 426  | pub trait TLocation {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:2037:42
[INFO] [stdout]      |
[INFO] [stdout] 2037 |         let location = self.get_location(location_id)?;
[INFO] [stdout]      |                             ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:2049:44
[INFO] [stdout]      |
[INFO] [stdout] 2049 |             let __module = self.get_module(&module.read()?.index)?;
[INFO] [stdout]      |                                 ---------- ^^^^^^^^^^^^^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&module::ModuleId`
[INFO] [stdout]                 found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:65:8
[INFO] [stdout]      |
[INFO] [stdout] 65   |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:2016:42
[INFO] [stdout]      |
[INFO] [stdout] 2016 |         let location = self.get_location(location_id)?;
[INFO] [stdout]      |                             ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:2053:49
[INFO] [stdout]      |
[INFO] [stdout] 2053 |         let location_ref = self.get_location_id(location_id)?;
[INFO] [stdout]      |                                 --------------- ^^^^^^^^^^^ expected `u64`, found `&LocationPath`
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/session.rs:324:8
[INFO] [stdout]      |
[INFO] [stdout] 324  |     fn get_location_id(&self, uid: UID) -> Result<LocationId, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `Location` found for struct `Arc<RwLock<types::Path>>` in the current scope
[INFO] [stdout]     --> src/local_session/session.rs:2054:32
[INFO] [stdout]      |
[INFO] [stdout] 2054 |         raw_module.notify(Ref::Location(location_ref), event)?;
[INFO] [stdout]      |                                ^^^^^^^^ associated item not found in `Arc<RwLock<Path>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:2060:42
[INFO] [stdout]      |
[INFO] [stdout] 2060 |         let location = self.get_location(location_id)?;
[INFO] [stdout]      |                             ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `id` found for struct `Arc<RwLock<types::Path>>` in the current scope
[INFO] [stdout]     --> src/local_session/session.rs:2022:33
[INFO] [stdout]      |
[INFO] [stdout] 2022 |             id: location.ref_id.id(),
[INFO] [stdout]      |                                 ^^ method not found in `Arc<RwLock<Path>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:2069:49
[INFO] [stdout]      |
[INFO] [stdout] 2069 |             Event::Location(info, _) => *info = location_id.clone(),
[INFO] [stdout]      |                                         -----   ^^^^^^^^^^^^^^^^^^^ expected `LocationId`, found `LocationPath`
[INFO] [stdout]      |                                         |
[INFO] [stdout]      |                                         expected due to the type of this binding
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:2037:42
[INFO] [stdout]      |
[INFO] [stdout] 2037 |         let location = self.get_location(location_id)?;
[INFO] [stdout]      |                             ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:2081:39
[INFO] [stdout]      |
[INFO] [stdout] 2081 |             let _ = self.get_location(location_id)?;
[INFO] [stdout]      |                          ------------ ^^^^^^^^^^^ expected `&LocationId`, found `&LocationPath`
[INFO] [stdout]      |                          |
[INFO] [stdout]      |                          arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&location::LocationId`
[INFO] [stdout]                 found reference `&location::LocationPath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:63:8
[INFO] [stdout]      |
[INFO] [stdout] 63   |     fn get_location(&self, location_id: &LocationId) -> Result<LRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:2049:44
[INFO] [stdout]      |
[INFO] [stdout] 2049 |             let __module = self.get_module(&module.read()?.index)?;
[INFO] [stdout]      |                                 ---------- ^^^^^^^^^^^^^^^^^^^^^ expected `&ModuleId`, found `&ModulePath`
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected reference `&module::ModuleId`
[INFO] [stdout]                 found reference `&module::ModulePath`
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/local_session/session.rs:65:8
[INFO] [stdout]      |
[INFO] [stdout] 65   |     fn get_module(&self, module_id: &ModuleId) -> Result<MRow, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:2089:52
[INFO] [stdout]      |
[INFO] [stdout] 2089 |         if !events.write()?.subscribe(ID::Location(location_id.clone())) {
[INFO] [stdout]      |                                       ------------ ^^^^^^^^^^^^^^^^^^^ expected `LocationId`, found `LocationPath`
[INFO] [stdout]      |                                       |
[INFO] [stdout]      |                                       arguments to this enum variant are incorrect
[INFO] [stdout]      |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]     --> src/types.rs:24:5
[INFO] [stdout]      |
[INFO] [stdout] 24   |     Location(LocationId),
[INFO] [stdout]      |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> src/local_session/session.rs:2053:49
[INFO] [stdout]      |
[INFO] [stdout] 2053 |         let location_ref = self.get_location_id(location_id)?;
[INFO] [stdout]      |                                 --------------- ^^^^^^^^^^^ expected `u64`, found `&LocationPath`
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 arguments to this method are incorrect
[INFO] [stdout]      |
[INFO] [stdout] note: method defined here
[INFO] [stdout]     --> src/session.rs:324:8
[INFO] [stdout]      |
[INFO] [stdout] 324  |     fn get_location_id(&self, uid: UID) -> Result<LocationId, SessionError>;
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `Location` found for struct `Arc<RwLock<types::Path>>` in the current scope
[INFO] [stdout]     --> src/local_session/session.rs:2054:32
[WARN] too many lines in the log, truncating it
